Comment obtenir un filtrage de lignes efficace dans Pandas à l'aide du chaînage d'opérateurs ?

Patricia Arquette
Libérer: 2024-11-04 05:59:29
original
691 Les gens l'ont consulté

How to Achieve Efficient Row Filtering in Pandas Using Operator Chaining?

Chaînage d'opérateurs pour le filtrage de lignes dans Pandas

Le filtrage des lignes d'un DataFrame dans Pandas peut être une tâche fastidieuse en utilisant l'indexation par parenthèses standard (par exemple, df[df['column'] == value]), notamment lorsque l'on souhaite une approche de chaînage d'opérateurs. Cet article fournit une solution pour permettre un filtrage transparent des lignes à l'aide du chaînage d'opérateurs.

Pandas permet de « chaîner » des filtres en utilisant l'indexation booléenne. En joignant des critères à l'aide de l'opérateur logique &, plusieurs conditions peuvent être appliquées pour filtrer les lignes. Par exemple, l'extrait de code suivant filtre les lignes où A est égal à 1 et D est égal à 6 :

<code class="python">df[(df.A == 1) & (df.D == 6)]</code>
Copier après la connexion

Pour ceux qui recherchent une solution de chaînage de méthodes, une méthode de masque personnalisée peut être définie et ajoutée à la classe DataFrame. Cette méthode peut ensuite être utilisée pour le filtrage des lignes. Le code suivant illustre cette approche :

<code class="python">def mask(df, key, value):
    return df[df[key] == value]

pandas.DataFrame.mask = mask

df.mask('A', 1)
df.mask('A', 1).mask('D', 6)</code>
Copier après la connexion

En incorporant le chaînage d'opérateurs, le filtrage des lignes dans les pandas devient plus efficace et expressif. Cela permet d'obtenir un code concis et lisible lors de l'exécution d'opérations de filtrage complexes.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal