[英]Pandas funcion not returning highest value by groupby
我有一个庞大的 19.000 行数据库来为我的公司学习和学习。 在尝试进行一些绘图时,我注意到代码没有从“VALOR_TOTAL”列返回最高值。
我试过了
DF.loc[DF.groupby('UF')['VALOR_TOTAL'].idxmax()]
这给我带来
ID | 数据 | NOME_GO | 用友 | CODIGO_FILIAL | VALOR_META | VALOR_TOTAL |
---|---|---|---|---|---|---|
15588 | 2022-01-04 | 帕特里夏 | 交流电 | 488 | 69657.3039 | 43002.0006 |
15940 | 2022-01-04 | 马西奥 | 铝 | 563 | 55711.8677 | 37566.4154 |
2512 | 2021-12-28 | 帕特里夏 | 是 | 228 | 43086.9032 | 27827.8802 |
14945 | 2022-01-04 | 帕特里夏 | 美联社 | 339 | 24990.6546 | 21479.2039 |
16416 | 2022-01-05 | 亚历克斯 | 文学学士 | 676 | 52367.9216 | 36180.2228 |
595 | 2021-12-28 | 雷纳塔 | 行政长官 | 52 | 141617.2037 | 95838.6252 |
Df 为阅读理解而缩短
但是数字很糟糕,通过手动检查,其中 70% 与原始 DF 不匹配
VM_VT.sort_values('VALOR_TOTAL', ascending=False).drop_duplicates(['UF'])
带回相同的结果。
groupby
+ idxmax
返回一个系列,您只需要切片的值:
DF.loc[DF.groupby('UF')['VALOR_TOTAL'].idxmax().values]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.