dask_expr._groupby.SeriesGroupBy.std

dask_expr._groupby.SeriesGroupBy.std

SeriesGroupBy.std(ddof=1, split_every=None, split_out=None, numeric_only=False, shuffle_method=None)

计算组的样本标准差,排除缺失值。

此文档字符串是从 pandas.core.groupby.groupby.GroupBy.std 复制而来的。

Dask 版本可能存在一些不一致性。

对于多个分组,结果索引将是 MultiIndex。

参数
ddofint, 默认值为 1

自由度。

引擎str, 默认 None (Dask 中不支持)
  • 'cython' : 通过cython的C扩展运行操作。

  • 'numba' : 通过来自 numba 的 JIT 编译代码运行操作。

  • None : 默认为 'cython' 或全局设置 compute.use_numba

1.4.0 新版功能.

engine_kwargsdict, 默认 None (Dask 中不支持)
  • 对于 'cython' 引擎,没有接受的 engine_kwargs

  • 对于 'numba' 引擎,该引擎可以接受 nopythonnogilparallel 字典键。这些键的值必须是 TrueFalse'numba' 引擎的默认 engine_kwargs{{'nopython': True, 'nogil': False, 'parallel': False}}

1.4.0 新版功能.

仅数值bool, 默认 False

只包含 floatintboolean 数据。

1.5.0 新版功能.

在 2.0.0 版更改: numeric_only 现在默认设置为 False

返回
Series 或 DataFrame

每个组内值的标准差。

参见

Series.groupby

对一个 Series 应用 groupby 函数。

DataFrame.groupby

对DataFrame的每一行或每一列应用一个groupby函数。

示例

对于 SeriesGroupBy:

>>> lst = ['a', 'a', 'a', 'b', 'b', 'b']  
>>> ser = pd.Series([7, 2, 8, 4, 3, 3], index=lst)  
>>> ser  
a     7
a     2
a     8
b     4
b     3
b     3
dtype: int64
>>> ser.groupby(level=0).std()  
a    3.21455
b    0.57735
dtype: float64

对于 DataFrameGroupBy:

>>> data = {'a': [1, 3, 5, 7, 7, 8, 3], 'b': [1, 4, 8, 4, 4, 2, 1]}  
>>> df = pd.DataFrame(data, index=['dog', 'dog', 'dog',  
...                   'mouse', 'mouse', 'mouse', 'mouse'])
>>> df  
         a  b
  dog    1  1
  dog    3  4
  dog    5  8
mouse    7  4
mouse    7  4
mouse    8  2
mouse    3  1
>>> df.groupby(level=0).std()  
              a         b
dog    2.000000  3.511885
mouse  2.217356  1.500000