简单来说,对于一个m*n的矩阵,如果sum()的参数中没有指定axis,就是将所有的数值加到一起,得到1*1的标量。如果是axis=0,就是按照列进行加,得到一个1*n的行向量;如果axis=1,表示矩阵每一个行相加,得到一个m*1的列向量。
例如:
import numpy as np
np.sum([[0,1,2],[2,1,3],axis=1)
结果就是:array([3,6])
a = np.array([[0, 2, 1]])
print a.sum()
print a.sum(axis=0)
print a.sum(axis=1)
结果分别是:3, [0 2 1], [3]
b = np.array([0, 2, 1])
print b.sum()
print b.sum(axis=0)
print b.sum(axis=1)
结果分别是:3, 3, 运行错误:'axis' entry is out of bounds
可知:对一维数组,只有第0轴,没有第1轴