搜索了这个,但找不到答案。
说我有数据框(格式化道歉):
戴夫400美元 戴夫400美元 戴夫400美元 b弗雷德$ 220我想过滤数据框,所以它只显示第三列是MAXIMUM值的行,有人能指出我正确的方向吗?
即。它只会显示Dave的行
所有我能找到的方法是显示每个单独索引的最大值的行(索引为A,B,C等)
提前谢谢
答案 0 :(得分:0)
这应该有效:
>>> 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
答案 1 :(得分:0)
如果您的索引是唯一的并且您可以返回一行(如果多行具有相同的最大值),那么您可以使用idxmax
方法。
df.loc[df['money'].idxmax()]
如果您想添加一些闪光,可以使用以下方法突出显示每列中的最大值:
df.loc[df['money'].idxmax()].style.highlight_max()