以下摘录自SciPy documentation(截至2016年7月8日):
沿着轴
为具有多个维度的数组定义轴。二维数组有两个相应的轴:第一个在行(轴0)上垂直向下运行,第二个轴在列(轴1)上水平运行。
可以沿其中一个轴进行许多操作。例如,我们可以对数组的每一行求和,在这种情况下,我们按列或轴1运算:
>>> x = np.arange(12).reshape((3,4))
>>> x
array([[ 0, 1, 2, 3],
[ 4, 5, 6, 7],
[ 8, 9, 10, 11]])
>>> x.sum(axis=1)
array([ 6, 22, 38])
我认为有一个错误,因为它们并不是所有行的总和,而是所有列,因此它们使用axis = 1
因为它们遍历所有列(即沿轴1水平移动)并添加它们。
所以,我的问题是:这是文档中的错误还是我不明白Axi如何在SciPy中工作?
答案 0 :(得分:3)
考虑这个例子。
>>> print(a)
[[ 0 1 2]
[ 3 4 5]
[ 6 7 8]
[ 9 10 11]]
总结列:
>>> a.sum(axis=0)
array([18, 22, 26])
或者,总结一下行:
>>> a.sum(axis=1)
array([ 3, 12, 21, 30])
我希望这可以解除你的怀疑。