我很困惑。我发现用于找到SD(standard deviation
)的公式很少。
这是NumPy
库std
方法:
>>> nums = np.array([65, 36, 52, 91, 63, 79])
>>> np.std(nums)
17.716909687891082
但是我在这里找到了另一个公式:Standard deviation
通过具有相同数据集的该公式,我的结果是323,1666666666667
。现在哪一个是对的?还是它们用于两种不同的事物?
编辑:似乎我忘记了平方根:)
答案 0 :(得分:4)
numpy是正确的。这里是普通的python版本:
from math import sqrt
data = [65, 36, 52, 91, 63, 79]
mean = sum(data) / len(data)
std = sqrt(sum((d - mean) ** 2 for d in data) / len(data))
print(std) # 17.716909687891082
答案 1 :(得分:0)
核心python。参见pstdev
import statistics
print(statistics.pstdev([65, 36, 52, 91, 63, 79]))
输出
17.716909687891082