Numpy中维数
numpy能够实现高维矩阵的运算,但是当维数超过3后,就能难理解根据某个轴进行运算的操作过程(太抽象了)。二维矩阵,就是有行和列,axis=0,对应是行,axis=1,对应是列,通过2个下标确定具体某个元素的位置,三维则需要三个下标确定某个元素的位置。
Numpy维度的直观理解
对应三维矩阵,那么里面的具体的元素是被三个[]所包围的,最外层[]对应于axis=0,即第一维,次外层[]对应于axis=1,即第二维,最里层的[]对应axis=2,即第三维。

多少个维度,就对应有多少个[]。
三维数组,sum(axis=i)的理解。
二维数组的对固定某个轴进行加减排序不难理解,但是达到三维及以上就比较难直观理解了。这里以三维数组为例,更高维度情况类似。
np.sum(axis=0)
这是按照第1维进行数组的求和。

对于axis=0,就对应于第一个[],那么从这个[]往内看,子单位是两个二维数组,sum(axis=0)就是这两个二维数组的求和,那么就是这两个二维数组对应位置的元素相加,就得到了结果,求和后就消掉了第一维度,降维了,变成二维矩阵。
也可以这么理解,就是将元素第二和第三个下标相同,第1个下标不同的元素相加得到。a[0][0][0]+a[1][0][0]。

本文详细解析了Numpy中高维数组在sum和sort操作时,对不同axis的理解。针对三维数组,解释了axis=0、1、2时的求和与排序过程,帮助理解轴向操作如何影响元素间的加法与排序,以及如何根据需求选择合适的axis值。
最低0.47元/天 解锁文章
8万+

被折叠的 条评论
为什么被折叠?



