Выберите лучшие 5 из каждого месяца, используя значения на DateTimeIndex с Pandas - PullRequest
0 голосов
/ 28 апреля 2020

У меня есть pandas DataFrame с DatetimeIndex. Я хочу resample на month и получить top 5 для каждого month в DataFrame от конкретного column, однако использование nlargest(5) дает мне топ-5 всего DataFrame вместо месяца :

Вот snippet моего кода:

df.resample("M").productID.value_counts().nlargest(5)

Это дает мне топ-5 для всего DataFrame, мне нужно иметь топ-5 для каждого месяца.

1 Ответ

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

Поскольку value_counts сортировка по умолчанию возможна, используйте head вместо nlargest:

df.resample("M").productID.apply(lambda x: x.value_counts().head(5))
...