本文主要是介绍np.transpose() 维度抽象理解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
传入参数:
a:输入数组
axis: int类型的列表。默认情况下,(0,1,2)到 (2,1,0)
对于一维向量而言,numpy.transpose()是不起作用的,返回它本身。
对于二维数组而言,
二位数据的两个坐标就是(0,1), transpose(1,0)就是将 0坐标和 1坐标 的值对调
对于三维数组而言,
三维数组的坐标就是 (0,1,2) ,默认 transpose(2,1,0),将0维数据和 2维数据对调
不建立三维空间理解,虽然比较直观,但是对数据处理并不方便
坐标维度:(0,1,2)
数据维度:(2,3,4)
a,b转换,transpose(2,1,0),将0维坐标和 2维坐标对应的数据对调,b的数据维度是(4,3,2)
第2维坐标对应的数据是 [ 0 1 2 3]、[ 4 5 6 7]、[ 8 9 10 11]、[12 13 14 15]、[16 17 18 19]、[20 21 22 23]
第0维坐标对应的数据是[0 12]、[1 13]、[2 14]、[3 15]、[4 16、[5 17]、[6 18]......
那么第2维坐标的数据 变成了第0维坐标对应的数据,第0维坐标的数据变到了第2维
对应到三维图上就是, [ 0 1 2 3]数据和 [0 12]所在位置对换,[0 4 8]这一维不变
对比 a,b,发现,对应的行信息仍然保留,0,4,8、 1,5,9....
a,c转换,transpose(1,0,2),c数据维度是(3,2,4),第0坐标和第1坐标数据变换,第2维数据不变
第1维坐标对应的数据[0 4 8]、[1 5 9] 、[2 6 10]
对应到三维图上就是,[0 4 8]数据和 [0 12]所在位置对换,[ 0 1 2 3]这一维不变
a = np.arange(24).reshape(2, 3, 4) b = a.transpose() c = a.transpose(1,0,2)
这篇关于np.transpose() 维度抽象理解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!