pandas.core.window.rolling.Rolling.std

Rolling.std(ddof=1, *args, **kwargs)[source]

Calculate the rolling standard deviation.

Parameters
ddofint, default 1

Delta Degrees of Freedom. The divisor used in calculations is N - ddof, where N represents the number of elements.

*args

For NumPy compatibility and will not have an effect on the result.

**kwargs

For NumPy compatibility and will not have an effect on the result.

Returns
Series or DataFrame

Return type is the same as the original object.

See also

numpy.std

Equivalent method for NumPy array.

pandas.Series.rolling

Calling rolling with Series data.

pandas.DataFrame.rolling

Calling rolling with DataFrames.

pandas.Series.std

Aggregating std for Series.

pandas.DataFrame.std

Aggregating std for DataFrame.

Notes

The default ddof of 1 used in Series.std() is different than the default ddof of 0 in numpy.std().

A minimum of one period is required for the rolling calculation.

The implementation is susceptible to floating point imprecision as shown in the example below.

Examples

>>> s = pd.Series([5, 5, 6, 7, 5, 5, 5])
>>> s.rolling(3).std()
0             NaN
1             NaN
2    5.773503e-01
3    1.000000e+00
4    1.000000e+00
5    1.154701e+00
6    2.580957e-08
dtype: float64