Maison > développement back-end > Tutoriel Python > Le chaînage d'opérateurs peut-il être utilisé pour filtrer les lignes DataFrame dans Pandas ?

Le chaînage d'opérateurs peut-il être utilisé pour filtrer les lignes DataFrame dans Pandas ?

DDD
Libérer: 2024-11-04 04:50:29
original
1015 Les gens l'ont consulté

Can Operator Chaining Be Used to Filter DataFrame Rows in Pandas?

Pandas : filtrer les lignes du DataFrame avec le chaînage d'opérateurs

De nombreuses opérations Pandas peuvent être effectuées via le chaînage d'opérateurs, notamment le regroupement, l'agrégation et l'application. Cependant, le filtrage des lignes est généralement effectué à l'aide de l'indexation par parenthèses traditionnelle.

df_filtered = df[df['column'] == value]
Copier après la connexion

Cette approche nécessite d'attribuer df à une variable avant le filtrage, ce qui peut être fastidieux. Existe-t-il un moyen plus pratique d'enchaîner les opérations de filtrage ?

Réponse :

Bien que la dernière ligne de code fournie dans la question ne soit pas claire, le filtrage « enchaîné » peut être obtenu en chaînant des critères dans l'index booléen.

df[(df.A == 1) & (df.D == 6)]
Copier après la connexion

De plus, les utilisateurs peuvent définir leur propre méthode de masque et l'utiliser pour le filtrage :

def mask(df, key, value):
    return df[df[key] == value]

pandas.DataFrame.mask = mask

df = pandas.DataFrame(np.random.randint(0, 10, (4,4)), index=list('abcd'), columns=list('ABCD'))

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

Cela permet un chaînage pratique des opérations de filtrage .

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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal