Pandas : comment additionner des colonnes en fonction d’une condition



Vous pouvez utiliser la syntaxe suivante pour additionner les valeurs d’une colonne dans un DataFrame pandas en fonction d’une condition :

df.loc[df['col1'] == some_value, 'col2'].sum()

Ce tutoriel fournit plusieurs exemples d’utilisation pratique de cette syntaxe à l’aide du DataFrame pandas suivant :

import pandas as pd

#create DataFrame
df = pd.DataFrame({'team': ['A', 'A', 'A', 'B', 'B', 'C'],
                   'conference': ['East', 'East', 'East', 'West', 'West', 'East'],
                   'points': [11, 8, 10, 6, 6, 5],
                   'rebounds': [7, 7, 6, 9, 12, 8]})

#view DataFrame
df

        team	conference  points  rebounds
0	A	East	    11	    7
1	A	East	    8	    7
2	A	East	    10	    6
3	B	West	    6	    9
4	B	West	    6	    12
5	C	East	    5	    8

Exemple 1 : additionner une colonne en fonction d’une condition

Le code suivant montre comment trouver la somme des points pour les lignes où l’équipe est égale à « A » :

df.loc[df['team'] == 'A', 'points'].sum()

29

Exemple 2 : additionner une colonne en fonction de plusieurs conditions

Le code suivant montre comment trouver la somme des points pour les lignes où l’équipe est égale à « A » et où la conférence est égale à « Est » :

df.loc[(df['team'] == 'A') & (df['conference'] == 'East'), 'points'].sum()

29

Exemple 3 : additionner une colonne en fonction de l’une des plusieurs conditions

Le code suivant montre comment trouver la somme des points pour les lignes où l’équipe est égale à « A » ou « B » :

df.loc[df['team'].isin(['A', 'B']), 'points'].sum()

41

Vous pouvez trouver plus de tutoriels sur les pandas sur cette page .

Ajouter un commentaire

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