我想做与这个问题几乎相同的事情。
然而,根据我的数据集,@jezrael 接受的答案中的方法花费的时间太长——原始数据框中有大约 300k 行,并且运行 nlargest(1) 命令需要几分钟。此外,我在 head(1000) 有限的数据帧上进行了尝试,并且在 value_count 中并没有只获得 1 行——我得到了与 value_count 完全相同的系列。
用我自己的话说:基本上,我的数据集有两列,如下所示:
Session Rating
A Positive
A Positive
A Positive
A Negative
B Negative
B Negative
C Positive
C Negative
Run Code Online (Sandbox Code Playgroud)
使用 counts = df.groupby('Session')['Rating'].value_counts() 我得到一个像这样的 Series 对象:
Session Rating
A Positive 3
Negative 1
B Negative 2
C Positive 1
Negative 1
Run Code Online (Sandbox Code Playgroud)
如何获取仅包含最大计数评级的数据框?如果有多个最大值(例如 C),我想从返回的表中排除该最大值。