Pandas 按照某列出现元素的频率排序

import pandas as pd
import numpy as np

df = pd.DataFrame({'Country': ['China', 'China', 'India', 'India', 'America', 'Japan', 'China', 'India'],
                   'Income': [10000, 10000, 5000, 5002, 40000, 50000, 8000, 5000],
                   'Age': [50, 43, 34, 40, 25, 25, 45, 32]})
order=df['Country'].value_counts().reset_index() #计算数量,并且重新设置 index,oder 的第一列的名字是’index‘
sorted_list = order['index'].values.tolist()
print(sorted_list)#返回的就是按照数量排列好的list


#如何按照一个 list 排序,后续再说
#一种思路是遍历order['index'].values.tolist(),通过 df[df['Country'] == sorted_list[k]]

你可能感兴趣的:(pandas,python,数据分析)