Maison >développement back-end >Tutoriel Python >Appliquer ou transformer : quand devez-vous utiliser lequel dans Pandas Groupby ?
Présentation :
Dans Pandas , la méthode groupby() propose deux options pour manipuler les données regroupées par une colonne spécifique : apply() et transform(). Ces méthodes diffèrent en termes d'entrée, de sortie et de comportement.
Différences clés :
Fonctionnalité | AppliquerTransformer | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
Passe le DataFrame contenant toutes les colonnes de chaque groupe | Passe des séries individuelles pour chaque colonne de chaque groupe | ||||||||||||
Sortie : | Peut renvoyer des scalaires, des séries, des DataFrames ou d'autres objets | Doit renvoyer une séquence (série, tableau ou liste) de la même longueur que le groupe | ||||||||||||
Comportement : |
Fonctionne sur l'ensemble du DataFrame au sein de chaque groupe | Fonctionne sur une seule colonne à la fois |
Lorsque vous devez appliquer une fonction personnalisée à l'ensemble du DataFrame au sein de chaque groupe. Cela permet un traitement complexe par ligne et renvoie un DataFrame avec le même nombre de lignes que l'entrée.
df.groupby('State').apply(lambda x: pd.DataFrame({'Average': x.mean()}))
Exemple :
Lorsque vous devez appliquer une fonction personnalisée colonne par colonne au sein de chaque groupe.Cela vous permet de manipuler des colonnes spécifiques sans affecter l'ensemble du DataFrame.
df.groupby('State').transform(lambda x: x - x.mean())
Exemple :
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!