经管之家送您一份
应届毕业生专属福利!
求职就业群
感谢您参与论坛问题回答
经管之家送您两个论坛币!
+2 论坛币
import pandas as pd
df = pd.DataFrame({'Sp':['a','b','c','d','e','f'], 'Mt':['s1', 's1', 's2','s2','s2','s3'],
'Value':[1,2,3,4,5,6],
'Count':[3,2,5,10,10,6]
})
方法1:在分组中过滤出Count最大的行
df.groupby('Mt').apply(lambda t: t[t.Count==t.Count.max()])
方法2:用transform获取原dataframe的index,然后过滤出需要的行
df.groupby(['Mt'])['Count'].agg(max)
df.groupby(['Mt'])['Count'].transform(max)
方法3:idmax(旧版本pandas是argmax)
df.groupby('Mt')['Count'].idxmax()
扫码加我 拉你入群
请注明:姓名-公司-职位
以便审核进群资格,未注明则拒绝
|