pd.groupby()的用法
时间: 2023-07-01 10:16:46 浏览: 90
pandas之分组groupby()的使用整理与总结
pandas中的`groupby()`方法是对数据按照指定的列进行分组操作,将同一组的数据放在一起。
`groupby()`方法的基本用法如下:
```python
grouped = df.groupby('列名')
```
其中,`df`是一个DataFrame对象,`列名`是需要进行分组的列名。
调用`groupby()`方法后,会返回一个`DataFrameGroupBy`对象,可以对其进行聚合操作,例如`sum()`、`mean()`等。
下面是一些常用的`groupby()`方法的示例:
1. 对单个列进行分组,并对另一列求和:
```python
grouped = df.groupby('列名')
result = grouped['另一列'].sum()
```
2. 对多个列进行分组,并对另一列求和:
```python
grouped = df.groupby(['列名1', '列名2'])
result = grouped['另一列'].sum()
```
3. 对单个列进行分组,并对多列求和:
```python
grouped = df.groupby('列名')
result = grouped[['另一列1', '另一列2']].sum()
```
4. 对单个列进行分组,并对另一列求平均值:
```python
grouped = df.groupby('列名')
result = grouped['另一列'].mean()
```
5. 对单个列进行分组,并对另一列进行多个聚合操作:
```python
grouped = df.groupby('列名')
result = grouped['另一列'].agg(['sum', 'mean', 'count'])
```
6. 对单个列进行分组,并对多列进行多个聚合操作:
```python
grouped = df.groupby('列名')
result = grouped.agg({'另一列1': ['sum', 'mean'], '另一列2': 'count'})
```
上述示例中,`result`均为一个新的DataFrame对象,其中包含了分组后的聚合结果。
除了上述示例中的聚合操作外,`groupby()`方法还可以进行其他一些操作,例如`apply()`、`filter()`、`transform()`等,可以根据实际需要进行选择。
阅读全文