2015-02-24 92 views
1

说,第3标准差,我有一个数组:计算阵列

import numpy as np 

x = np.array([0, 1, 2, 5, 6, 7, 8, 8, 8, 10, 29, 32, 45]) 

我如何计算它的第三个标准偏差,所以我能得到的+3sigma值下面的图片所示?

enter image description here

通常情况下,我用std = np.std(x),但说实话,我不知道这是否返回1sigma值或可能2sigma,或者别的什么东西。我会非常感谢你的帮助。先谢谢你。

+4

你检查过的文档:http://docs.scipy.org/doc/numpy/reference/generated/numpy.std.html,我从这种认识是简单地'X。 mean()+ 3 * x.std()'会给你你想要的 – EdChum 2015-02-24 15:15:52

回答

4

NumPy的std产生标准偏差,通常用“sigma”表示。要获得2-Σ或3-Σ范围,你可以简单地乘以西格玛2或3:

print [x.mean() - 3 * x.std(), x.mean() + 3 * x.std()] 

输出:

[-27.545797458510656, 52.315028227741429] 

有关详细信息,您可以参考相关文档,其中指出:

的标准偏差为平均的 的的平方根与平均值偏差平方,即STD = SQRT(平均(ABS(X - x.mean())** 2 ))。

http://docs.scipy.org/doc/numpy/reference/generated/numpy.std.html