numpy.trace#
- numpy.trace(a, смещение=0, axis1=0, axis2=1, dtype=None, выход=None)[источник]#
Возвращает сумму по диагоналям массива.
Если a является двумерным, возвращается сумма вдоль его диагонали с заданным смещением, т.е. сумма элементов
a[i,i+offset]для всех i.Если a имеет более двух измерений, то оси, указанные axis1 и axis2, используются для определения 2-D подмассивов, чьи следы возвращаются. Форма результирующего массива такая же, как у a с axis1 и axis2 удалён.
- Параметры:
- aarray_like
Входной массив, из которого берутся диагонали.
- смещениеint, необязательный
Смещение диагонали от главной диагонали. Может быть как положительным, так и отрицательным. По умолчанию 0.
- axis1, axis2int, необязательный
Оси, которые будут использоваться как первая и вторая оси 2-D подмассивов, из которых должны быть взяты диагонали. По умолчанию используются первые две оси a.
- dtypedtype, опционально
Определяет тип данных возвращаемого массива и аккумулятора, где элементы суммируются. Если dtype имеет значение None и a имеет целочисленный тип точности меньше, чем стандартная целочисленная точность, то используется стандартная целочисленная точность. В противном случае точность такая же, как у a.
- выходndarray, необязательно
Массив, в который помещается вывод. Его тип сохраняется, и он должен иметь правильную форму для хранения вывода.
- Возвращает:
- sum_along_diagonalsndarray
Если a является двумерным, возвращается сумма по диагонали. Если a имеет большие размерности, тогда возвращается массив сумм по диагоналям.
Примеры
>>> import numpy as np >>> np.trace(np.eye(3)) 3.0 >>> a = np.arange(8).reshape((2,2,2)) >>> np.trace(a) array([6, 8])
>>> a = np.arange(24).reshape((2,2,2,3)) >>> np.trace(a).shape (2, 3)