Maison > Article > développement back-end > Comment obtenir un filtrage de lignes efficace dans Pandas à l'aide du chaînage d'opérateurs ?
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>
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>
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!