Comment puis-je trouver la ligne pour laquelle la valeur d'une colonne spécifique est maximum ?
df.max()
me donnera la valeur maximale pour chaque colonne, je ne sais pas comment obtenir la ligne correspondante.
Comment puis-je trouver la ligne pour laquelle la valeur d'une colonne spécifique est maximum ?
df.max()
me donnera la valeur maximale pour chaque colonne, je ne sais pas comment obtenir la ligne correspondante.
Le site idmax
du DataFrame renvoie l'index de l'étiquette de la ligne avec la valeur maximale et le comportement de argmax
dépend de la version de pandas
(actuellement, il renvoie un avertissement). Si vous voulez utiliser le indice de position vous pouvez faire ce qui suit :
max_row = df['A'].values.argmax()
ou
import numpy as np
max_row = np.argmax(df['A'].values)
Notez que si vous utilisez np.argmax(df['A'])
se comporte de la même manière que df['A'].argmax()
.
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.
1 votes
Est-il possible d'obtenir les deux valeurs les plus élevées au lieu de la valeur maximale ?
9 votes
Vous pouvez utiliser
sort_values
et obtenir l'index :df.sort_values('col', ascending=False)[:2].index
8 votes
Paresseux1 : éviter de trier inutilement une série entière parce que c'est O(N logN) en moyenne, alors que trouver max/idxmax est seulement O(N).
0 votes
@AsheKetchum avez-vous obtenu une réponse à cette question ?