猿问

根据 pandas 中的 sum groupby 找到主要类别

你能支持我如何解决下面这个问题吗?


我试图找到一种基于 groupby 的主要类别,看看类别如何具有更高的价值。


我有下面的数据框。


>> USER    PROCESS    HOURS_WORKED

>> 0    USER1    PROCESS1    1

>> 1    USER1    PROCESS2    2

>> 2    USER1    PROCESS3    3

>> 3    USER2    PROCESS1    1

>> 4    USER2    PROCESS2    5

>> 5    USER2    PROCESS3    3

我根据用户和进程应用 groupby mehotd。


dfg = df1.groupby(['USER','PROCESS']).sum()


我的目标是下面的数据框。


USER    MAIN_PROCESS

USER1   PROCESS3

USER2   PROCESS2

groupby 中是否有任何方法或函数可以做到这一点?


先感谢您。


慕婉清6462132
浏览 77回答 1
1回答

侃侃尔雅

尝试:df[df.groupby(['USER']).HOURS_WORKED.rank("dense", ascending=False).eq(1)]结果:    USER   PROCESS  HOURS_WORKED2  USER1  PROCESS3             34  USER2  PROCESS2             5当 rank of HOURS_WORKEDdescending order perUSER等于 1 时,表示“主进程”。
随时随地看视频慕课网APP

相关分类

Python
我要回答