pandas.core.window.rolling.Rolling.std#
- Rolling.std(ddof=1, numeric_only=False, engine=None, engine_kwargs=None)[源代码][源代码]#
计算滚动标准差。
- 参数:
- ddofint, 默认 1
自由度增量。计算中使用的除数是
N - ddof
,其中N
表示元素的数量。- numeric_only布尔值, 默认为 False
仅包含浮点数、整数、布尔列。
Added in version 1.5.0.
- 引擎str, 默认为 None
'cython'
: 通过来自cython的C扩展运行操作。'numba'
: 通过来自 numba 的 JIT 编译代码运行操作。None
: 默认为'cython'
或全局设置compute.use_numba
Added in version 1.4.0.
- engine_kwargs字典, 默认为 None
对于
'cython'
引擎,没有接受的engine_kwargs
对于
'numba'
引擎,引擎可以接受nopython
、nogil
和parallel
字典键。这些值必须是True
或False
。'numba'
引擎的默认engine_kwargs
是{'nopython': True, 'nogil': False, 'parallel': False}
Added in version 1.4.0.
- 返回:
- Series 或 DataFrame
返回类型与原始对象相同,具有
np.float64
数据类型。
参见
numpy.std
NumPy 数组的等效方法。
Series.rolling
调用带有 Series 数据的 rolling。
DataFrame.rolling
使用 DataFrames 调用 rolling。
Series.std
聚合 Series 的标准差。
DataFrame.std
聚合 DataFrame 的标准。
备注
在
Series.std()
中使用的默认ddof
为 1,这与numpy.std()
中默认的ddof
为 0 不同。滚动计算至少需要一个周期。
示例
>>> s = pd.Series([5, 5, 6, 7, 5, 5, 5]) >>> s.rolling(3).std() 0 NaN 1 NaN 2 0.577350 3 1.000000 4 1.000000 5 1.154701 6 0.000000 dtype: float64