numpy.trace¶
-
numpy.
trace
(a, offset=0, axis1=0, axis2=1, dtype=None, out=None)[source]¶ 沿数组的对角线返回总和。
如果a是2-D,则返回具有给定偏移的沿其对角线的和,即对于所有i,元素
a[i,i+offset]
如果a有两个以上的尺寸,则由axis1和axis2指定的轴用于确定返回其轨迹的2-D子数组。所得数组的形状与移除axis1和axis2的a的形状相同。
参数: a:array_like
输入数组,从中获取对角线。
offset:int,可选
对角线与主对角线的偏移。可以是正面和负面。默认为0。
axis1,axis2:int,可选
轴将被用作应从中获取对角线的2-D子阵列的第一和第二轴。默认值是a的前两个轴。
dtype:dtype,可选
确定返回的数组和累加器元素的累加器的数据类型。如果dtype具有值None且a是小于默认整数精度的整数类型的精度,则使用缺省整数精度。否则,精度与a的精度相同。
out:ndarray,可选
数组,其中放置输出。它的类型被保留,并且它必须是保持输出的正确形状。
返回: sum_along_diagonals:ndarray
如果a是2-D,则返回沿对角线的和。如果a具有较大的维,则返回沿对角线的和的数组。
例子
>>> 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)