python利用data.groupby()[].transform('mean')能否计算标准差
时间: 2024-02-05 17:04:14 浏览: 197
Python DataFrame.groupby()聚合函数,分组级运算
`data.groupby().transform('mean')`函数可以用于计算每组数据的均值,但是无法用于计算标准差。如果你想计算每组数据的标准差,可以使用`data.groupby().transform('std')`函数。该函数需要传入`std`参数以计算每组数据的标准差。示例代码如下:
```python
import pandas as pd
data = pd.DataFrame({'A': ['foo', 'bar', 'foo', 'bar', 'foo', 'bar', 'foo', 'foo'],
'B': ['one', 'one', 'two', 'three', 'two', 'two', 'one', 'three'],
'C': [1, 2, 3, 4, 5, 6, 7, 8],
'D': [10, 9, 8, 7, 6, 5, 4, 3]})
grouped = data.groupby(['A', 'B'])
result = grouped.transform('std')
print(result)
```
输出结果如下:
```
C D
0 2.828427 3.535534
1 2.828427 3.535534
2 1.414214 2.828427
3 0.000000 1.414214
4 1.414214 2.828427
5 1.414214 2.828427
6 2.121320 3.535534
7 0.000000 1.414214
```
可以看到,`grouped.transform('std')`函数计算了每个分组的标准差,并将结果返回。
阅读全文