ConsigneSélectionnez les étudiants avec note > 12
Filtrer un DataFrame = garder uniquement les lignes qui respectent une condition. Le principe est le même qu'un masque booléen NumPy.
Syntaxe
df[condition]La condition est une expression qui renvoie une Series de booléens (un par ligne). Pandas garde les lignes True.
bons = df[df['note'] > 12]Décomposé
df['note'] → la colonne notedf['note'] > 12 → Series booléenne [True, False, True...]df[ ... ] → garde les lignes où c'est True& ET (and)| OU (or)~ NON (not)Comme NumPy : utilise & | ~ et jamais and/or/not.
Parenthèses obligatoires autour de chaque condition.
# note > 12 ET ville == 'Paris'df[(df['note'] > 12) & (df['ville'] == 'Paris')]# ville Paris OU Lyondf[df['ville'].isin(['Paris', 'Lyon'])]# ville PAS Parisdf[df['ville'] != 'Paris'].str.contains('motif') vrai si la chaîne contient le motif.isna() / .notna() valeurs manquantes / non manquantesdf = pd.DataFrame({ 'nom': ['Alice','Bob','Charlie'], 'note': [14, 11, 17]})bons = df[df['note'] > 12]print(bons)# nom note# 0 Alice 14# 2 Charlie 17Le résultat est un nouveau DataFrame. L'original df n'est pas modifié.
Envie d'aller plus loin ? Découvrez nos formations certifiées Bac+2 à Bac+5 →