Индекс максимального значения Pandas
У меня есть фрейм данных Pandas с сочетанием экранных имен, твитов,fav и т. д. Я хочу найти максимальное значение " favcount "(что я уже сделал), а также вернуть имя экрана этого "tweet"
df = pd.DataFrame()
df['timestamp'] = timestamp
df['sn'] = sn
df['text'] = text
df['favcount'] = fav_count
print df
print '------'
print df['favcount'].max()
Я не могу найти что-нибудь на этом, может ли кто-нибудь помочь мне в правильном направлении?
2 ответов
использовать .argmax()
получить индекс максимального значения. тогда вы можете использовать loc
df.loc[df['favcount'].idxmax(), 'sn']
edit:argmax()
Теперь устарел, переключаясь на idxmax()
Я думаю, что вам нужно idxmax
- получить индекс максимального значения favcount
а затем выберите значение в столбце sn
by ix
:
df = pd.DataFrame({'favcount':[1,2,3], 'sn':['a','b','c']})
print (df)
favcount sn
0 1 a
1 2 b
2 3 c
print (df.favcount.idxmax())
2
print (df.ix[df.favcount.idxmax()])
favcount 3
sn c
Name: 2, dtype: object
print (df.ix[df.favcount.idxmax(), 'sn'])
c