numpy.nansum#
-
numpy.nansum(a, axis=None, dtype=None, out=None, keepdims=
значение> , initial=<нет значение>, where=значение> )[источник]# Возвращает сумму элементов массива по заданной оси, рассматривая Not a Numbers (NaN) как нули.
В версиях NumPy <= 1.9.0 Nan возвращается для срезов, которые полностью состоят из NaN или пусты. В более поздних версиях возвращается ноль.
- Параметры:
- aarray_like
Массив, содержащий числа, сумму которых требуется найти. Если a не является массивом, выполняется попытка преобразования.
- ось{int, tuple of int, None}, optional
Ось или оси, вдоль которых вычисляется сумма. По умолчанию вычисляется сумма сведенного массива.
- dtypeтип данных, опционально
Тип возвращаемого массива и аккумулятора, в котором суммируются элементы. По умолчанию, dtype a используется. Исключение, когда a имеет целочисленный тип с меньшей точностью, чем платформенный (u)intp. В этом случае по умолчанию будет либо (u)int32, либо (u)int64 в зависимости от того, является ли платформа 32- или 64-битной. Для неточных входных данных dtype должен быть неточным.
- выходndarray, необязательно
Альтернативный выходной массив для размещения результата. По умолчанию это
None. Если предоставлен, он должен иметь ту же форму, что и ожидаемый вывод, но тип будет приведен при необходимости. См. Определение типа вывода для подробностей. Приведение NaN к целому числу может давать неожиданные результаты.- keepdimsbool, необязательно
Если установлено значение True, оси, которые были сокращены, остаются в результате как измерения с размером один. С этой опцией результат будет корректно транслироваться против исходного a.
Если значение отличается от значения по умолчанию, то keepdims будет передан в
meanилиsumметоды подклассовndarray. Если методы подклассов не реализуют keepdims любые исключения будут вызваны.- начальныйскаляр, опционально
Начальное значение для суммы. См.
reduceподробности.Новое в версии 1.22.0.
- гдеarray_like из bool, необязательный
Элементы для включения в сумму. См.
reduceподробности.Новое в версии 1.22.0.
- Возвращает:
- nansumndarray.
Новый массив с результатом возвращается, если только выход указан, в этом случае он возвращается. Результат имеет тот же размер, что и a, и той же формы, что и a if ось не равно None или a является одномерным массивом.
Смотрите также
Примечания
Если присутствуют как положительная, так и отрицательная бесконечность, сумма будет Not A Number (NaN).
Примеры
>>> import numpy as np >>> np.nansum(1) 1 >>> np.nansum([1]) 1 >>> np.nansum([1, np.nan]) 1.0 >>> a = np.array([[1, 1], [1, np.nan]]) >>> np.nansum(a) 3.0 >>> np.nansum(a, axis=0) array([2., 1.]) >>> np.nansum([1, np.nan, np.inf]) inf >>> np.nansum([1, np.nan, -np.inf]) -inf >>> with np.errstate(invalid="ignore"): ... np.nansum([1, np.nan, np.inf, -np.inf]) # both +/- infinity present np.float64(nan)