我试图对一组3个数字做一个简单的方差计算:
numpy.var([0.82159889, 0.26007962, 0.09818412])
又回来了
0.09609366366174843
然而,当你计算方差时,它实际上应该是
0.1441405
看起来很简单,但我还没找到答案。
最佳答案
正如documentation所解释的:
ddof : int, optional
"Delta Degrees of Freedom": the divisor used in the calculation is
``N - ddof``, where ``N`` represents the number of elements. By
default `ddof` is zero.
所以你有:
>>> numpy.var([0.82159889, 0.26007962, 0.09818412], ddof=0)
0.09609366366174843
>>> numpy.var([0.82159889, 0.26007962, 0.09818412], ddof=1)
0.14414049549262264
这两个约定都很常见,您总是需要检查您正在使用的任何包使用的是哪种语言。