Pandas : Comment mettre à jour les valeurs dans les lignes
Vous pouvez utiliser la syntaxe de base suivante pour mettre à jour les valeurs dans un DataFrame pandas tout en utilisant des iterrows :
for i, row in df.iterrows():
points_add = 10
if row['points'] > 15:
points_add = 50
df.at[i,'points'] = points_add
Cet exemple particulier parcourt chaque ligne d’un DataFrame et met à jour la valeur dans la colonne de points à 50 si la valeur est actuellement supérieure à 15.
Si la valeur actuelle est inférieure ou égale à 15, la valeur est mise à jour pour devenir 10 .
L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.
Exemple : mettre à jour les valeurs dans Pandas DataFrame dans les lignes
Supposons que nous ayons le DataFrame pandas suivant qui montre le nombre de points marqués par différents joueurs de basket-ball :
import pandas as pd #create DataFrame df = pd.DataFrame({'player': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I'], 'points': [10, 12, 14, 15, 15, 15, 16, 17, 20]}) #view DataFrame print(df) player points 0 A 10 1 B 12 2 C 14 3 D 15 4 E 15 5 F 15 6 G 16 7 H 17 8 I 20
Supposons que nous souhaitions mettre à jour les valeurs de la colonne des points en utilisant la logique suivante :
- Si les points sont inférieurs ou égaux à 15, mettez à jour la valeur pour qu’elle soit 10 .
- Si les points sont supérieurs à 15, mettez à jour la valeur pour qu’elle soit 50 .
Nous pouvons utiliser la fonction iterrows pour parcourir chaque ligne du DataFrame et effectuer ces mises à jour :
#iterate over each row in DataFrame and update values in points column
for i, row in df.iterrows():
points_add = 10
if row['points'] > 15:
points_add = 50
df.at[i,'points'] = points_add
#view updated DataFrame
print(df)
player points
0 A 10
1 B 10
2 C 10
3 D 10
4 E 10
5 F 10
6 G 50
7 H 50
8 I 50
Nous pouvons voir que les valeurs dans la colonne des points ont été mises à jour en conséquence.
Remarque : Vous pouvez trouver la documentation complète de la fonction pandas iterrows() ici .
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans les pandas :
Pandas : Comment parcourir les colonnes
Pandas : comment sélectionner des lignes entre deux valeurs
Pandas : mettre à jour les valeurs des colonnes en fonction d’un autre DataFrame