Say, I have an array:
import numpy as np
x = np.array([0, 1, 2, 5, 6, 7, 8, 8, 8, 10, 29, 32, 45])
How can I calculate the 3rd standard deviation for it, so I could get the value of +3sigma as shown on the picture below?

Typically, I use std = np.std(x), but to be honest, I don't know if it returns the 1sigma value or maybe 2sigma, or whatever. I'll very grateful for you help. Thank you in advance.
NumPy's std yields the standard deviation, which is usually denoted with "sigma". To get the 2-sigma or 3-sigma ranges, you can simply multiply sigma with 2 or 3:
print [x.mean() - 3 * x.std(), x.mean() + 3 * x.std()]
Output:
[-27.545797458510656, 52.315028227741429]
For more detailed information, you might refer to the documentation, which states:
The standard deviation is the square root of the average of the squared deviations from the mean, i.e., std = sqrt(mean(abs(x - x.mean())**2)).
http://docs.scipy.org/doc/numpy/reference/generated/numpy.std.html
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With