我想对学生进行计数,并按计数对学生进行排序,然后打印前3个。 我尝试过:
df['freq'] = df.groupby('studentid')['studentid'].transform('count')
df.sort_values('freq')
print("The 3 students")
print(df[['freq', 'studentname', 'studentid']])
但是输出每次都是一样的。 输出仅显示具有频率的正常数据帧,但不对其进行排序。
答案 0 :(得分:0)
df.sort_values('freq')
返回数据的(排序的)副本。所以:
df = df.sort_values('freq')
或
df.sort_values('freq', inplace=True)