2015-02-24 124 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