public void CalculateMean() { var statsHelper = new StatsHelper(); var mean = statsHelper.CalculateMean(new List <double> { 5, 10, 15, 20, 25 }); Assert.AreEqual(mean, 15); }
private StatsSummary <decimal> CalculateBasicStats() { var count = _records.Count; var sum = StatsHelper.CalculateSum(_records); var mean = StatsHelper.CalculateMean(sum, count); var standardDeviation = StatsHelper.CalculateStandardDeviation(_records, mean); var frequencyHistogram = StatsHelper.GenerateHistogram(_records, 10); return(new StatsSummary <decimal>() { NumRecords = count, Sum = sum, Mean = mean, StandardDeviation = standardDeviation, FrequencyHistogram = frequencyHistogram }); }
/// <summary> /// Populate DataItemDto.Score and DataItemDto.IsOutlier /// </summary> /// <param name="input"></param> public void CalculateOutlier(IEnumerable <DataItemDto> input) { foreach (var item in input) { _trainingData.Enqueue(item); if (_trainingData.Count > _trainingDataSize) { _trainingData.Dequeue(); } } var mean = _statsHelper.CalculateMean(_trainingData.Select(x => (double)x.Value)); var std = _statsHelper.CalculateStandardDeviation(_trainingData.Select(x => (double)x.Value)); foreach (var item in input) { item.Score = _statsHelper.CalculateZScore((double)item.Value, mean, std); item.IsOutlier = Math.Abs(item.Score) >= _outlierThreshHold; } }
public void Should_Return_CorrectMean(decimal sum, int count, decimal expectedResult) { var result = StatsHelper.CalculateMean(sum, count); Assert.Equal(expectedResult, result); }