pandas 分组聚合 如何使用行转列显示
时间: 2024-01-02 19:04:07 浏览: 128
pandas.DataFrame的pivot()和unstack()实现行转列
可以使用 pandas 中的 `pivot_table` 方法来将分组聚合后的数据进行行列转换。具体操作如下:
假设有如下的数据集,包含了不同地区、不同年份的销售额数据:
```
region year sales
0 East 2019 100
1 East 2020 200
2 South 2019 150
3 South 2020 180
4 West 2019 120
5 West 2020 220
```
现在想要将地区作为行索引,年份作为列索引,销售额作为值。可以使用以下代码进行转换:
```python
import pandas as pd
df = pd.DataFrame({
'region': ['East', 'East', 'South', 'South', 'West', 'West'],
'year': [2019, 2020, 2019, 2020, 2019, 2020],
'sales': [100, 200, 150, 180, 120, 220]
})
pivot_df = pd.pivot_table(df, index='region', columns='year', values='sales')
print(pivot_df)
```
运行结果如下:
```
year 2019 2020
region
East 100 200
South 150 180
West 120 220
```
可以看到,将原始数据按照地区进行了分组聚合,并将年份作为列索引,销售额作为值进行了行列转换。
阅读全文