Maison >développement back-end >Tutoriel Python >Comment calculer la somme des lignes de colonnes spécifiques dans un Pandas DataFrame ?

Comment calculer la somme des lignes de colonnes spécifiques dans un Pandas DataFrame ?

Susan Sarandon
Susan Sarandonoriginal
2024-11-10 12:51:02607parcourir

How do I calculate the row sum of specific columns in a Pandas DataFrame?

Somme de lignes de colonnes données dans Pandas DataFrame

Dans la bibliothèque Pandas de Python, nous rencontrons souvent le besoin de calculer la somme de colonnes spécifiques dans un DataFrame. Pour y parvenir efficacement, nous devons considérer les paramètres et opérations appropriés.

Considérons le DataFrame suivant :

df = pd.DataFrame({'a': [1, 2, 3],
                   'b': [2, 3, 4],
                   'c': ['dd', 'ee', 'ff'],
                   'd': [5, 9, 1]})

Notre objectif est d'ajouter une colonne 'e' qui représente la somme de colonnes « a », « b » et « d ». Bien qu'intuitivement, on pourrait aborder cela avec quelque chose comme :

df['e'] = df[['a', 'b', 'd']].map(sum)

cette méthode ne parvient pas à produire le résultat souhaité.

L'approche correcte implique d'utiliser la fonction sum() avec les paramètres suivants :

  • axis=1 : Spécifie que la sommation doit être effectuée le long des lignes (horizontalement).
  • numeric_only=True : garantit que seules les colonnes numériques sont prises en compte dans l'opération, à l'exclusion des colonnes non numériques comme « c ».

L'application de cette approche donne ce qui suit résultat :

df['e'] = df.sum(axis=1, numeric_only=True)

Sortie :

   a  b   c  d   e
0  1  2  dd  5   8
1  2  3  ee  9  14
2  3  4  ff  1   8

Alternativement, si nous souhaitons calculer la somme de colonnes spécifiques uniquement, nous pouvons créer une liste de ces colonnes et éliminer celles que nous ne donnons pas. Vous n'avez pas besoin d'utiliser la méthode Remove().

col_list = list(df)
col_list.remove('d')

df['e'] = df[col_list].sum(axis=1)

Sortie :

   a  b   c  d  e
0  1  2  dd  5  3
1  2  3  ee  9  5
2  3  4  ff  1  7

En utilisant ces opérations, nous pouvons additionner efficacement les lignes des colonnes spécifiées dans un Pandas DataFrame, garantissant ainsi une analyse précise et efficace des données.

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!

Déclaration:
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