pandas 分组计数并排序
时间: 2023-08-30 11:09:20 浏览: 113
可以使用 pandas 的 groupby 函数实现分组计数,然后再对计数结果进行排序。例如:
```python
import pandas as pd
# 创建示例数据
data = {
'name': ['Alice', 'Bob', 'Charlie', 'David', 'Eva', 'Frank', 'Alice', 'Bob', 'Charlie'],
'age': [25, 36, 28, 24, 27, 32, 24, 35, 29],
'gender': ['F', 'M', 'M', 'M', 'F', 'M', 'F', 'M', 'M']
}
df = pd.DataFrame(data)
# 分组计数并排序
result = df.groupby('name').size().reset_index(name='count').sort_values(by='count', ascending=False)
# 输出结果
print(result)
```
输出结果:
```
name count
0 Alice 2
1 Bob 2
2 Charlie 2
3 David 1
4 Eva 1
5 Frank 1
```
以上代码首先使用 groupby 函数按照 name 列进行分组,并使用 size 函数计算每个分组的大小(即计数)。然后使用 reset_index 函数将分组结果转换为 DataFrame,并将 count 列命名为 'count'。最后使用 sort_values 函数按照 count 列进行降序排序。
阅读全文