搜索了此问题,但找不到答案。
说我有一个数据框架(格式化道歉):
dave $ 400
戴夫$ 400
戴夫$ 400
B弗雷德$ 220
C詹姆斯$ 150
C詹姆斯$ 150
D Harry $ 50
我想过滤数据框,所以它仅显示第三列是最大值的行,有人可以指向正确的方向吗?
即。它只会显示戴夫的行
我所能找到的只是显示行的方式的方法,其中每个单独索引的最大值(索引为a,b,c et et)
预先感谢您
这应该有效:
>>> df
0 money
a Dave 400
a Dave 400
a Dave 400
b Fred 220
c James 150
c James 150
d Harry 50
>>> df[df['money'] == df['money'].max()]
0 money
a Dave 400
a Dave 400
a Dave 400
如果您的索引是唯一的,并且您可以返回一行(对于具有相同最大值的多行),则可以使用idxmax
方法。
df.loc[df['money'].idxmax()]
,如果要添加一些耀斑,则可以以:
突出显示每列中的最大值 df.loc[df['money'].idxmax()].style.highlight_max()