我有4d矩阵mat4
。代替使用np.sum(mat, axis=)
并定义3次axis
来求和三个维度,有没有一种方法可以同时求和多个维度的矩阵?
#Sum `mat4` except `axis=0`
mat4 = np.random.rand(2,3,4,5)
matsum = np.sum(mat4, axis=3)
matsum = np.sum(matsum, axis=2)
matsum = np.sum(matsum, axis=1)
print matsum.shape
>> (2L,)
答案 0 :(得分:3)
axis
关键字可以是int
或tuple
,因此
您可以简单地使用
np.sum(mat, axis=(1, 2, 3))
来自np.sum
文档:
如果轴是整数元组,则对所有轴进行求和 在元组中指定,而不是像以前一样指定单个轴或所有轴。