这是我的代码:
import numpy as np
print(np.std(np.array([0,1])))
它产生0.5
我确信这是不正确的。我做错了什么?
答案 0 :(得分:35)
默认情况下,numpy.std
会返回人口标准差,在这种情况下,np.std([0,1])
会被正确报告为0.5
。如果您要查找样本标准差,可以向ddof
提供可选的std()
参数:
>>> np.std([0, 1], ddof=1)
0.70710678118654757
ddof
修改样本的平方和的除数 - 减去均值。除数为N - ddof
,默认ddof
为0
,您可以从结果中看到。