C#中没有对应Execl的标准偏差Stedev.s函数,那么怎么办呢?幸好,我们可以查到标准偏差的计算公式:
其中 x 是样本平均值 AVERAGE (number1,number2,…) n 是样本大小。
那么在C#中对应的代码:
public double Stedevs(IEnumerable<double> values)
{
if (values.Count() < 2)
{
return 0d;
}
var avg = values.Average();
var sum = values.Sum(d => Math.Pow(d - avg, 2));
var result = Math.Sqrt(sum / (values.Count() - 1));
return result;
}