Pandas : comment trouver la valeur minimale sur plusieurs colonnes



Vous pouvez utiliser les méthodes suivantes pour trouver la valeur minimale sur plusieurs colonnes dans un DataFrame pandas :

Méthode 1 : rechercher la valeur minimale sur plusieurs colonnes

df[['col1', 'col2', 'col3']].min(axis=1)

Méthode 2 : ajouter une nouvelle colonne contenant la valeur minimale sur plusieurs colonnes

df['new_col'] = df[['col1', 'col2', 'col3']].min(axis=1)

Les exemples suivants montrent comment utiliser chacune de ces méthodes en pratique avec le DataFrame pandas suivant :

import pandas as pd

#create DataFrame
df = pd.DataFrame({'player': ['A', 'B', 'C', 'D', 'E', 'F', 'G'],
                   'points': [28, 17, 19, 14, 23, 26, 5],
                   'rebounds': [5, 6, 4, 7, 14, 12, 9],
                   'assists': [10, 13, 7, 8, 4, 5, 8]})

#view DataFrame
print(df)

  player  points  rebounds  assists
0      A      28         5       10
1      B      17         6       13
2      C      19         4        7
3      D      14         7        8
4      E      23        14        4
5      F      26        12        5
6      G       5         9        8

Exemple 1 : Rechercher la valeur minimale sur plusieurs colonnes

Le code suivant montre comment trouver la valeur minimale dans chaque ligne dans les colonnes de points et de rebonds :

#find minimum value across points and rebounds columns
df[['points', 'rebounds']].min(axis=1)

0     5
1     6
2     4
3     7
4    14
5    12
6     5
dtype: int64

Voici comment interpréter le résultat :

  • La valeur minimale dans les colonnes de points et de rebonds pour la première ligne était de 5 .
  • La valeur minimale dans les colonnes de points et de rebonds pour la deuxième ligne était de 6 .
  • La valeur minimale dans les colonnes de points et de rebonds pour la troisième ligne était de 4 .

Et ainsi de suite.

Exemple 2 : ajouter une nouvelle colonne contenant la valeur minimale sur plusieurs colonnes

Le code suivant montre comment ajouter une nouvelle colonne au DataFrame qui contient la valeur minimale dans chaque ligne dans les colonnes de points et de rebonds :

#add new column that contains min value across points and rebounds columns
df['min_points_rebs'] = df[['points', 'rebounds']].min(axis=1)

#view updated DataFrame
print(df)

  player  points  rebounds  assists  min_points_rebs
0      A      28         5       10                5
1      B      17         6       13                6
2      C      19         4        7                4
3      D      14         7        8                7
4      E      23        14        4               14
5      F      26        12        5               12
6      G       5         9        8                5

La nouvelle colonne intitulée min_points_rebs contient désormais la valeur minimale dans les colonnes de points et de rebonds pour chaque ligne du DataFrame.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans les pandas :

Pandas : Comment déplacer une colonne devant le DataFrame
Pandas : comment vérifier si la colonne contient une chaîne
Pandas : Comment ajouter une colonne vide à DataFrame

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *