Fonction Series.sum() de Pandas

Pandas 常用函数Fonctions courantes de Pandas


Series.sum()C'est une fonction de Pandas utilisée pour calculer la somme de tous les éléments d'une Series. C'est l'une des fonctions statistiques les plus couramment utilisées en analyse de données et elle permet d'obtenir rapidement la somme de données numériques.

Que ce soit pour calculer le total des ventes, le total des profits ou la quantité totale,sum()il peut vous aider à le compléter rapidement. Il est particulièrement adapté au traitement des données financières, des rapports statistiques, de l'analyse des données de ventes et de scénarios similaires.


Syntaxe de base et paramètres

sum()C'est une fonction membre de l'objet Series et elle est appelée directement via l'opérateur point.

Format de syntaxe

Series.sum(axis=None, skipna=True, level=None, numeric_only=None, min_count=0, **kwargs)

Description du paramètre

Paramètre Type Description Valeur par défaut
axis int Spécifie l'axe. Une Series n'a qu'une seule ligne de données ; ce paramètre sert principalement à la compatibilité avec DataFrame. Aucune
skipna bool Si True, les valeurs NaN sont ignorées lors du calcul ; si False, le résultat renvoie NaN lorsqu'un NaN est rencontré. True
level int ou str Si la Series possède un MultiIndex, spécifiez le niveau à calculer. Aucune
numeric_only bool Si True, seules les données numériques sont calculées ; sinon, il tente de convertir en valeurs numériques. False
min_count int Nombre minimal de valeurs valides nécessaires pour le calcul. Si le nombre de valeurs valides est inférieur à ce nombre, NaN est renvoyé. 0

Valeur de retour

  • Type de retour: numérique (int、floatounumpy.nan)
  • Description: Renvoie la somme de tous les éléments de la Series. Si tous les éléments sont NaN (et skipna=True), renvoie 0.

Exemples

À travers une série d'exemples du simple au complexe, apprenons à maîtriser parfaitementSeries.sum()son utilisation.

Exemple 1 : Utilisation de base - Calculer la somme d'une liste numérique

L'utilisation la plus élémentaire consiste à créer une Series numérique, puis à appelersum()pour calculer la somme.

Exemple

import pandas as pd

# Créer une Series contenant les montants des ventes
# Simuler les données de ventes quotidiennes sur une semaine
sales_data = pd.Series([1200, 1500, 1800, 900, 2100, 1600, 1350])

# Calculer le total des ventes
total_sales = sales_data.sum()

print("Ventes quotidiennes :")
print(sales_data)
print()
print(f"Total des ventes : {total_sales}")

Sortie :

每日销售额:
0    1200
1    1500
2    1800
3     900
4    2100
5    1600
6    1350
dtype: int64

总销售额:10450

Explication du code :

  • Création d'une Series contenant 7 jours de données de ventes, avec un type de données entier.
  • sum()Il parcourt simplement tous les éléments et les additionne pour obtenir le total 10450.

Exemple 2 : Gestion des données contenant des valeurs manquantes

Les valeurs manquantes surviennent souvent dans les données réelles,skipnaet le paramètre détermine comment gérer ces valeurs manquantes.

Exemple

import pandas as pd
import numpy as np

# Créer une Series contenant des valeurs manquantes
# Simuler des données de ventes manquantes pour certaines dates
sales_with_nan = pd.Series([1200, 1500, np.nan, 1800, np.nan, 2100, 1600])

print("Données de ventes avec des valeurs manquantes :")
print(sales_with_nan)
print()

# Par défaut skipna=True, ignore les NaN et calcule la somme
total_skipna = sales_with_nan.sum()
print(f"Somme avec skipna=True (par défaut) : {total_skipna}")

# Définir skipna=False, renvoyer NaN lorsqu'un NaN est rencontré
total_no_skipna = sales_with_nan.sum(skipna=False)
print(f"Somme avec skipna=False : {total_no_skipna}")

Sortie :

包含缺失值的销售数据:
0    1200.0
1    1500.0
2       NaN
3    1800.0
4       NaN
5    2100.0
6    1600.0
dtype: float64

skipna=True(默认)时的总和:8200.0
skipna=False 时的总和:nan

Explication du code :

  • Quandskipna=TrueLorsque (la valeur par défaut),sum()il ignore automatiquement les valeurs NaN et calcule la somme uniquement des valeurs valides.
  • Processus de calcul : 1200 + 1500 + 1800 + 2100 + 1600 = 8200
  • Quandskipna=FalseLorsque skipna=False, tant qu'un NaN existe, le résultat renvoie NaN. Ceci est utile dans les scénarios où vous devez clairement connaître l'intégrité des données.

Exemple 3 : Utilisation du paramètre min_count

min_countLe paramètre min_count permet de définir le nombre minimum de valeurs valides requis pour le calcul. Ceci est utile pour garantir la suffisance des données.

Exemple

import pandas as pd
import numpy as np

# Créer une Series où la plupart des valeurs sont manquantes
sparse_data = pd.Series([np.nan, np.nan, 100, np.nan, np.nan])

print("Données dont la plupart des valeurs sont manquantes :")
print(sparse_data)
print()

# Par défaut min_count=0, calcule tant qu'il y a au moins 0 valeurs valides
result_default = sparse_data.sum()
print(f"Résultat avec min_count=0 (par défaut) : {result_default}")

# Définir min_count=3, nécessite au moins 3 valeurs valides pour effectuer le calcul
result_min_count = sparse_data.sum(min_count=3)
print(f"Résultat avec min_count=3 : {result_min_count}")

# Définir min_count=2, il suffit de 2 valeurs valides
result_min_count_2 = sparse_data.sum(min_count=2)
print(f"Résultat avec min_count=2: {result_min_count_2}")

Sortie :

大部分缺失的数据:
0     NaN
1     NaN
2    100.0
3     NaN
4     NaN
dtype: float64

min_count=0(默认)时的结果:100.0
min_count=3 时的结果:nan
min_count=2 时的结果:100.0

Explication du code :

  • Cette Series a seulement 1 valeur valide (100).
  • min_count=3Cela signifie qu'au moins 3 valeurs valides sont requises pour le calcul, mais il n'y en a en réalité qu'une seule, donc NaN est renvoyé.
  • min_count=2Cela signifie qu'au moins 2 valeurs valides sont requises, mais il y a en réalité 1 valeur valide, ce qui ne satisfait pas la condition, donc NaN est renvoyé.
  • Ce paramètre est très utile dans les scénarios d'analyse avec des exigences élevées en matière de qualité des données, car il peut aider à identifier les situations où les données valides sont insuffisantes.

Exemple 4 : Application à l'analyse de données réelles

En combinant des scénarios métier réels, démontrezsum()ses applications typiques.

Exemple

import pandas as pd

# Créer un DataFrame de données de ventes simulées
sales_data = pd.DataFrame({
    'Month': ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun'],
    'East China Region': [12000, 15000, 18000, 16000, 14000, 17000],
    'Région du Nord de la Chine': [10000, 11000, 13000, 12500, 11500, 14000],
    'Région du Sud de la Chine': [15000, 17000, 19000, 18000, 16000, 20000]
})

print("Données de ventes par région pour le premier semestre de l'année :")
print(sales_data)
print()

# Calculer les ventes totales du semestre pour chaque région
for region in ['Région de l'Est de la Chine', 'Région du Nord de la Chine', 'Région du Sud de la Chine']:
    total = sales_data[region].sum()
    print(f"{region} ventes totales du semestre : {total} yuan")

print()

# Calculer les ventes totales pour toutes les régions
total_all = sales_data[['Région de l'Est de la Chine', 'Région du Nord de la Chine', 'Région du Sud de la Chine']].sum().sum()
print(f"Ventes totales du semestre pour toutes les régions : {total_all} yuan")

Sortie :

上半年各区域销售数据:
   月份   华东区   华北区   华南区
0  1月  12000  10000  15000
1  2月  15000  11000  17000
2  3月  18000  13000  19000
3  4月  16000  12500  18000
4  5月  14000  11500  16000
5  6月  17000  14000  20000

华东区半年总销售额:92000 元
华北区半年总销售额:72000 元
华南区半年总销售额:105000 元

所有区域半年总销售额:269000 元

Notes

  • sum()Par défaut, les valeurs NaN sont ignorées, ce qui est le comportement attendu dans la plupart des cas.
  • Si vous devez sommer une Series contenant des données non numériques, vous devez d'abord nettoyer les données ou utiliser lenumeric_only=Trueparamètre numeric_only.
  • min_countLe paramètre min_count est très utile pour la validation des données et les contrôles qualité, car il peut aider à identifier les situations où les données valides sont insuffisantes.
  • Pour les jeux de données volumineux,sum()sum() est généralement performant car il utilise les opérations vectorisées de NumPy en arrière-plan.

Résumé

Series.sum()C'est l'une des fonctions statistiques les plus basiques et les plus couramment utilisées dans Pandas. Ses principales caractéristiques incluent :

  • Simple et facile à utiliser, appelée directement via l'opérateur point.
  • Prend en charge la gestion des valeurs manquantes via leskipnaparamètre skipna.
  • Vous pouvez utiliser lamin_countparamètre min_count pour définir l'exigence minimale de valeurs valides.
  • Il utilise l'implémentation optimisée de NumPy au niveau sous-jacent, ce qui se traduit par une efficacité de calcul élevée.

Dans l'analyse de données réelle,sum()il est généralement utilisé avec d'autres fonctions d'agrégation (telles quemean()、count()mean(), etc.) pour mener une analyse statistique complète des données.

Pandas 常用函数Fonctions courantes de Pandas

Autres extensions