Maison > développement back-end > Tutoriel Python > Comment transmettre des arguments pour appliquer des fonctions pour la série Pandas en Python ?

Comment transmettre des arguments pour appliquer des fonctions pour la série Pandas en Python ?

Linda Hamilton
Libérer: 2024-10-22 22:50:02
original
250 Les gens l'ont consulté

How to Pass Arguments to Apply Functions for Pandas Series in Python?

Passer des arguments aux fonctions d'application de séries dans Python Pandas

La bibliothèque pandas fournit la méthode 'apply()' pour appliquer une fonction à chaque élément d'une série. Cependant, les anciennes versions de Pandas ne permettent pas de transmettre des arguments supplémentaires à la fonction.

Solution pour les anciennes versions de Pandas :

Pour gérer cette limitation dans les anciennes versions de pandas, vous pouvez utiliser les fonctions 'functools.partial()' ou 'lambda' :

Utilisation de 'functools.partial()' :

<code class="python">import functools
import operator

# Define a function with multiple arguments
def add_3(a, b, c):
    return a + b + c

# Create a partial function by binding extra arguments
add_3_partial = functools.partial(add_3, 2, 3)

# Apply the partial function to a series
series.apply(add_3_partial)</code>
Copier après la connexion

Utilisation de 'lambda' :

<code class="python"># Create a lambda function to pass extra arguments to the apply method
lambda_func = lambda x: my_function(a, b, c, d, ..., x)

# Apply the lambda function to the series
series.apply(lambda_func)</code>
Copier après la connexion

Solution pour les versions plus récentes de Pandas :

Depuis octobre 2017, pandas prend en charge la transmission des arguments de position et de mot-clé directement à la méthode 'apply()' :

<code class="python">series.apply(my_function, args=(2, 3, 4), extra_kw={"example": 5})</code>
Copier après la connexion

Dans cette syntaxe, les arguments de position sont ajoutés après l'élément du Série, tandis que les arguments de mots-clés sont transmis sous forme de dictionnaire.

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
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