Метод sum
Метод sum применяется к Series
и возвращает сумму всех элементов. По умолчанию
значения суммируются по всем элементам серии.
Метод автоматически игнорирует пропущенные
значения (NaN) при расчёте суммы.
Синтаксис
ser.sum(axis=None, skipna=True, numeric_only=False, min_count=0)
Параметры метода sum:
-
axis- ось, по которой суммируются значения. ДляSeriesэтот параметр не используется, так как серия одномерная. Значение по умолчанию:None. -
skipna- если установлен вTrue, пропущенные значения (NaN) игнорируются. ПриFalseсумма становится равной NaN, если хотя бы один элемент равен NaN. Значение по умолчанию:True. -
numeric_only- включает в расчёт только числовые столбцы. ДляSeriesэтот параметр не актуален, так как серия однородна по типу данных. Значение по умолчанию:False. -
min_count- минимальное количество непропущенных значений, необходимое для вычисления суммы. Если количество значений меньше указанного порога, результат будет равен NaN. Значение по умолчанию:0.
Пример
Давайте создадим серию чисел и вычислим их сумму:
import pandas as pd
ser = pd.Series([1, 2, 3, 4, 5])
res = ser.sum()
print(res)
Результат выполнения кода:
15
Пример
Теперь рассмотрим серию с пропущенными значениями. По умолчанию они игнорируются:
import pandas as pd
import numpy as np
ser = pd.Series([1, 2, np.nan, 4, 5])
res = ser.sum()
print(res)
Результат выполнения кода:
12.0
Если отключить игнорирование пропусков, результат
будет равен NaN:
import pandas as pd
import numpy as np
ser = pd.Series([1, 2, np.nan, 4, 5])
res = ser.sum(skipna=False)
print(res)
Результат выполнения кода:
nan
Пример
Параметр min_count позволяет задать минимальное
количество значений для расчёта суммы. Если их
недостаточно, возвращается NaN:
import pandas as pd
ser = pd.Series([1, 2, 3])
res = ser.sum(min_count=5)
print(res)
Результат выполнения кода:
nan
Если количество значений соответствует порогу, сумма вычисляется:
import pandas as pd
ser = pd.Series([1, 2, 3, 4, 5])
res = ser.sum(min_count=5)
print(res)
Результат выполнения кода:
15