numpy.ndarray 数组sum(axis=n)轴向的问题
实验
import numpy as np
arr = np.array([[[0, 1, 2, 3],
[0, 1, 2, 3],
[0, 1, 2, 3]],
[[0, 1, 2, 3],
[0, 1, 2, 3],
[0, 1, 2, 3]]])
推测
arr是(2,3,4)的数组,
axis=0时,结果应该是(3,4)的数组
axis=1时,结果应该是(2,4)的数组
axis=2时,结果应该是(2,3)的数组
验证
arr.sum(axis=0)
结果(3,4):
array([[0, 2, 4, 6],
[0, 2, 4, 6],
[0, 2, 4, 6]])
arr.sum(axis=1)
结果(2,4):
array([[0, 3, 6, 9],
[0, 3, 6, 9]])
arr.sum(axis=2)
结果(2,3):
array([[6, 6, 6],
[6, 6, 6]])
结论
轴向选择哪个,结果就是剩下的那些维度,对于(x,y,z)的数组
axis=0时,结果应该是(y,z)的数组
axis=1时,结果应该是(x,z)的数组
axis=2时,结果应该是(x,y)的数组