2022-04-26 14:34:14 +02:00

29 lines
571 B
C++

#pragma once
#include <vector>
#include <math.h>
class Testutil
{
public:
template <typename T>
static double Stddev(const std::vector<T>& distribution)
{
// Calculate mean
double sum = 0;
for (const T& i : distribution)
sum += i;
const double mean = sum / distribution.size();
// Calculate variance
sum = 0;
for (const T& i : distribution)
sum += (i - mean) * (i - mean);
const double variance = sum / (distribution.size() - 1);
// Calcuate stddev
const double stddev = sqrt(variance);
return stddev;
}
};