Вывести имя и количество данных в большинстве случаев в Python - PullRequest
0 голосов
/ 21 апреля 2019

Мне нужно напечатать название трассы с наибольшим количеством вхождений в столбце в CSV-файле.

Я пробовал это:

popular_course = (race_data.groupby(race_data.Race_Course.tolist(),as_index=False).size())
print(popular_course)

и мой вывод:

Aintree        3
Ayr            6
Fairyhouse     3
Punchestown    3
Sandown        3
dtype: int64

когда я изменил функцию печати на это:

print(popular_course.max())

Я понял:

6

Мне нужна также функция печати, чтобы напечатать название ипподрома, чтобы оно выглядело так:

Ayr            6

Как я могу включить в него название Ипподрома?

1 Ответ

0 голосов
/ 21 апреля 2019

Есть много способов сделать это. Ключ в том, что популярным курсом является серия, поэтому вы ищете максимальное значение и соответствующий индекс этого максимума.

Используя вашу существующую методологию:

race_courses_sized = race_data.groupby('Race_Course').size()
print(race_courses_sized[race_courses_sized == race_courses_sized.max()])

Другая версия

pd.DataFrame(race_data['Race_Course'].value_counts()).head(1)
...