Я пытаюсь создать единый фрейм данных, в котором можно визуализировать 5 символов частого бана по году, сезону и лиге. Мой начальный df выглядит так:
League Year Season ban_1 ban_2 ban_3 ban_4 ban_5
0 NALCS 2015 Spring Rumble Kassadin Lissandra NaN NaN
1 NALCS 2015 Spring Tristana Leblanc Nidalee NaN NaN
2 NALCS 2015 Spring Kassadin Sivir Lissandra NaN NaN
3 NALCS 2015 Spring RekSai Janna Leblanc NaN NaN
4 NALCS 2015 Spring JarvanIV Lissandra Kassadin NaN NaN
, и я хочу, чтобы в конце он выглядел примерно так:
Year Season League Top 5 bans
2015 Spring EULCS [(Zed, 49), (Kassadin, 39), (Cassiopeia, 34), (RekSai, 33), (Nidalee, 30)]
На данный момент я пытался сделать это любымсмысл, поэтому я попробовал это:
bans_info.groupby(['Year','Season', 'League', 'ban_1', 'ban_2', 'ban_3', 'ban_4', 'ban_5',]).sum()
и это:
bans_info.groupby (['Year', 'Season', 'League']). ban_1.value_counts (), но все жене получить его в конце, я попытался сделать это отдельно, но это становится слишком грязным
b1 = bans_info.groupby(['Year', 'Season', 'League']).ban_1.value_counts()
b2 = bans_info.groupby(['Year', 'Season', 'League']).ban_2.value_counts()
b12 = pd.merge(b1, b2, how='outer', on ='Year')