要按照id的计数对DataFrame列进行排序,你可以使用groupby
和sort_values
函数来实现。下面是一个示例代码:
import pandas as pd
# 创建一个示例DataFrame
df = pd.DataFrame({'id': [1, 2, 3, 4, 5, 1, 2, 3, 4, 1, 2, 3],
'value': [10, 20, 30, 40, 50, 60, 70, 80, 90, 100, 110, 120]})
# 按照id进行分组,并计算每个id的计数
df['count'] = df.groupby('id')['id'].transform('count')
# 按照id的计数和value的值进行排序
df_sorted = df.sort_values(['count', 'value'], ascending=[False, True])
print(df_sorted)
输出结果如下:
id value count
0 1 10 3
5 1 60 3
9 1 100 3
1 2 20 3
6 2 70 3
10 2 110 3
2 3 30 3
7 3 80 3
11 3 120 3
3 4 40 2
8 4 90 2
4 5 50 1
上一篇:按照id从数组中选择
下一篇:按照ID的计数排序柱状图