Maison > Article > développement back-end > Comment supprimer des lignes d'un DataFrame Pandas en fonction de la longueur de la chaîne et de plusieurs conditions ?
Suppression conditionnelle de lignes dans les DataFrames Pandas
En essayant de supprimer des lignes d'un DataFrame où une colonne spécifique dépasse une longueur de chaîne donnée, vous avez rencontré une erreur liée à "KeyError : vous n'avez aucun élément nommé False'". Pour résoudre ce problème, explorons une approche alternative à la suppression conditionnelle de lignes.
Au lieu d'utiliser l'expression "len(df['column name']) < 2", vous pouvez directement exploiter la méthode drop, qui vous permet de supprimer des lignes en fonction d'une condition spécifiée. La méthode drop prend deux arguments :
Exemple :
Pour supprimer toutes les lignes où la longueur de la chaîne dans la colonne « nom » est supérieure à 2 :
df = df.drop(df[df['name'].str.len() > 2].index)</p> <p><strong>Opération sur place :</strong></p> <p>Vous pouvez également effectuer l'opération de suppression sur place en définissant le paramètre inplace sur True :</p> <pre class="brush:php;toolbar:false">df.drop(df[df['name'].str.len() > 2].index, inplace=True)
Conditions multiples :
Pour appliquer plusieurs conditions de suppression de ligne, utilisez les opérateurs logiques | (ou) et & (et) entre parenthèses :
df = df.drop(df[(df['age'] < 18) & (df['gender'] == 'male')].index)
Cela supprimera toutes les lignes où l'âge est inférieur à 18 ans et le sexe est « masculin ».
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!