Application de fonctions à plusieurs colonnes dans les dataframes Pandas
L'application de fonctions par élément à plusieurs colonnes dans les dataframes Pandas peut être une tâche courante. Dans cet exemple, nous montrons comment appliquer une fonction à deux colonnes spécifiques, « col_1 » et « col_2 », pour créer une nouvelle colonne, « col_3 ».
Tout d'abord, définissez la fonction que vous souhaitez appliquer. Dans ce cas, nous avons get_sublist qui prend deux arguments, sta et end. Cette fonction est conçue pour renvoyer une sous-liste d'une liste mylist prédéfinie en fonction des arguments d'entrée.
Ensuite, créez un Pandas DataFrame (df) contenant les colonnes avec lesquelles vous souhaitez travailler. Assurez-vous que les colonnes ont des types de données adaptés à votre fonction.
Pour appliquer la fonction à plusieurs colonnes, utilisez la fonction d'application de Pandas. Cette fonction prend une fonction et l'applique à chaque ligne du DataFrame. Cela nécessite de spécifier l'argument de l'axe, qui doit être défini sur 1 pour appliquer la fonction sur plusieurs lignes.
Cependant, l'utilisation de la fonction apply avec des arguments de position peut entraîner des erreurs. Pour surmonter ce problème, nous pouvons utiliser une fonction anonyme (également appelée fonction lambda) comme argument à appliquer. La fonction lambda peut accéder aux valeurs de colonne de la ligne actuelle en utilisant leurs noms.
Voici le code :
df['col_3'] = df.apply(lambda x: get_sublist(x.col_1, x.col_2), axis=1)
Ce code crée une nouvelle colonne, 'col_3', avec le résultat de appliquer la fonction get_sublist à chaque ligne de 'col_1' et 'col_2'. La fonction lambda garantit que les arguments corrects sont transmis à la fonction get_sublist.
En conséquence, vous obtiendrez un DataFrame avec la sortie souhaitée, où chaque ligne de 'col_3' contient une sous-liste basée sur les valeurs correspondantes dans 'col_1' et 'col_2'.
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!