private void PickDataFromSet(PsaParametersSet set, DateTime date)
        {
            PsaParameterData rpmData =
                set.GetParameterOfType(PsaParameterType.EngineRpm);
            PsaParameterData pressureData =
                set.GetParameterOfType(PsaParameterType.FuelSystemPressure);

            IList <int> idleIndexes = IdleRpmValueExtractor.
                                      ExtractIdleIndexes(rpmData.GetDoubles());

            if (idleIndexes.Count < idleRpmValuesCountLowerThreshold)
            {
                return;
            }
            IList <double> idlePressureValues =
                ExtractIdlePressureValues(idleIndexes, pressureData.GetDoubles());

            result.Values.Add(
                new KeyValuePair <DateTime, double>(
                    date, idlePressureValues.Average()));

            // Let's get OcrToIdleRpmRatio
            PsaParameterData ocrData =
                set.GetParameterOfType(PsaParameterType.
                                       DieselPressureRegulatorRatio);

            if (ocrData != null)
            {
                IList <double> ocrValues =
                    ocrData.ExtractByIndexes(idleIndexes).ToList();
                IList <double> rpmValues =
                    rpmData.ExtractByIndexes(idleIndexes).ToList();
                if (ocrValues.Count != rpmValues.Count)
                {
                    throw new Exception("Counts should be equal!");
                }
                IList <double> ratioValues = new List <double>();
                for (int i = 0; i < rpmValues.Count; i++)
                {
                    double ratio = ocrValues[i] / rpmValues[i];
                    if (double.IsInfinity(ratio))
                    {
                        continue;
                    }
                    ratioValues.Add(RatioMultiplier * ocrValues[i] / rpmValues[i]);
                }
                result.OcrToRpmRatio[date] = ratioValues.Average();
            }
        }