如何从pandas数据帧返回几个最大值的索引?

时间:2017-09-20 19:25:06

标签: python pandas

这是文本中出现名称的数据框。姓名' Sage','戴维斯'和' Asplund'同样的时间发生。所以我需要一个查询来返回所有三个名字。

Name,Occurrence 
Sage,6
Davies,6
Asplund,6
Goodwin,5
Panula,5
Arnold,4
........

1 个答案:

答案 0 :(得分:3)

使用,获取行

In [1876]: df[df['Occurrence'] == df['Occurrence'].max()]
Out[1876]:
      Name  Occurrence
0     Sage           6
1   Davies           6
2  Asplund           6

并获得Name s

In [1878]: df.loc[df['Occurrence'] == df['Occurrence'].max(), 'Name']
Out[1878]:
0       Sage
1     Davies
2    Asplund
Name: Name, dtype: object

In [1879]: df.loc[df['Occurrence'] == df['Occurrence'].max(), 'Name'].values.tolist()
Out[1879]: ['Sage', 'Davies', 'Asplund']

并获取index

In [1880]: df[df['Occurrence'] == df['Occurrence'].max()].index
Out[1880]: Int64Index([0, 1, 2], dtype='int64')