pandas.core.groupby.DataFrameGroupBy.std #
- DataFrameGroupBy。std ( ddof = 1 , engine = None , engine_kwargs = None , numeric_only = False ) [来源] #
计算组的标准差,排除缺失值。
对于多个分组,结果索引将是 MultiIndex。
- 参数:
- ddof int,默认1
自由程度。
- 引擎str,默认无
'cython'
:通过 cython 的 C 扩展运行操作。'numba'
:通过 numba 的 JIT 编译代码运行操作。None
:默认'cython'
或全局设置compute.use_numba
1.4.0 版本中的新增功能。
- engine_kwargs字典,默认 None
对于
'cython'
发动机,没有可接受的engine_kwargs
对于
'numba'
引擎,引擎可以接受nopython
,nogil
和parallel
字典键。这些值必须是True
或False
。引擎engine_kwargs
的默认值'numba'
是{{'nopython': True, 'nogil': False, 'parallel': False}}
1.4.0 版本中的新增功能。
- numeric_only布尔值,默认 False
仅包含float、int或boolean数据。
1.5.0 版本中的新增内容。
在版本 2.0.0 中更改: numeric_only 现在默认为
False
.
- 返回:
- 系列或数据框
每组内值的标准差。
也可以看看
Series.groupby
将函数 groupby 应用于系列。
DataFrame.groupby
将函数 groupby 应用于 DataFrame 的每一行或每一列。
例子
对于系列分组依据:
>>> 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