2 votes

est-il possible d'afficher 2 valeurs maximales dans dataframe.pivot_table ? Pandas Python

Mes chéris, J'ai un dataframe avec 4 colonnes : -nom du club, formacja- position du joueur, overall- points de compétences, player_url- nom du joueur

a=[['club_name','formacja','overall','player_url']]

Je veux rechercher 2 ou plusieurs valeurs les plus grandes/les plus hautes de chaque nom de club et de chaque position.

J'ai essayé de créer un tableau croisé dynamique, mais je ne peux obtenir que la valeur maximale :

b=a.pivot(a, index='club_name',columns='formacja')#,aggfunc={'overall': [ max]})

Connaissez-vous d'autres méthodes ?

4voto

Eyal Asulin Points 1

Pour obtenir les deux plus grands nombres que vous pouvez faire :

sorted([3,4,5,2])[-2:]

Il produira [4,5]

Vous pouvez également l'utiliser dans la fonction de pivot :

pd.pivot_table(df, values='D', index=['A', 'B'],
                    columns=['C'], aggfunc=lambda x: sorted(x)[-2:])

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X