Как извлечь имя индекса из возвращенной строки в python данных? - PullRequest
0 голосов
/ 20 апреля 2020

Я хочу вернуть название страны с максимальным количеством золотых медалей в столбце «Золото».

# Summer    Gold    Silver  Bronze  Total   # Winter    Gold.1  Silver.1    Bronze.1    Total.1 # Games Gold.2  Silver.2    Bronze.2    Combined total  ID
Afghanistan 13  0   0   2   2   0   0   0   0   0   13  0   0   2   2   AFG
Algeria 12  5   2   8   15  3   0   0   0   0   15  5   2   8   15  ALG
Argentina   23  18  24  28  70  18  0   0   0   0   41  18  24  28  70  ARG
Armenia 5   1   2   9   12  6   0   0   0   0   11  1   2   9   12  ARM
Australasia 2   3   4   5   12  0   0   0   0   0   2   3   4   5   12  ANZ     

Следующий код возвращает объект строки, и я хочу извлечь название страны, которая является индексом этой строки.

def return_max_name():

    return df.loc[df['Gold'].idxmax()]

return_max_name()

Вот что возвращается:

# Summer            26
Gold               976
Silver             757
Bronze             666
Total             2399
# Winter            22
Gold.1              96
Silver.1           102
Bronze.1            84
Total.1            282
# Games             48
Gold.2            1072
Silver.2           859
Bronze.2           750
Combined total    2681
ID                 USA
Name: United States, dtype: object

Я хочу, чтобы функция возвращала 'United States'. Я новичок в Pandas, и я застрял здесь, поэтому любая помощь будет отличной!

1 Ответ

1 голос
/ 21 апреля 2020

Если вы нашли правильную строку, а в столбце # Summer указано название страны, вы можете получить это имя, добавив параметр столбца в loc.

Попробуйте изменить строку возврата на эту.

return df.loc[df.Gold.idxmax(), '# Summer']
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...