排序值在这种情况下不排序?

时间:2018-09-18 12:45:42

标签: python pandas

我有这个数据框,但是当使用来自熊猫的sort_values时,它并没有得到排序。

x = pd.read_csv(r'C:\Users\user\Desktop\Dataset.csv', sep = ',')
x.sort_values('duration',ascending = False,inplace = True)

x.loc[:,'dates'] = pd.to_datetime(x['dates'])
b=x.sort_values(['dates'],ascending = True).groupby([x['dates'].dt.strftime('%m'),'user'])['duration'].sum().reset_index()
b

它应该按月中每个用户的持续时间进行排序,以总小时数为单位,但没有出现排序。

  month  user   duration
0   09  user_01 54.73
1   09  user_02 55.82
2   09  user_03 18.00

1 个答案:

答案 0 :(得分:0)

您可以先分组并对值进行排序

df.groupby('month').apply(lambda x: x.sort_values(['duration'],ascending=False))

出局:

month   user    duration
month               
9   1   9   user_02 55.82
    0   9   user_01 54.73
    2   9   user_03 18.00