版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/summer2day/article/details/79986171
transpose的作用是对多维数组进行转置。
对多维数组来说,确定最底层的一个基本元素位置需要用到的索引个数即是维度。
比如说三维的数组,那就对维度进行编号,也就是0,1,2。这里的0,1,2可以理解为对shape返回元组的索引。
例如数组:
[[[ 0, 1, 2],
[ 3, 4, 5]],
[[ 6, 7, 8],
[ 9, 10, 11]]]
形状 | 索引 |
---|---|
2 | 0 |
2 | 1 |
3 | 2 |
实例:
import numpy as np
arr=np.arange(12).reshape(2,2,3)
arr=arr.transpose((1,2,0))
print(arr)
print(arr.shape)
输出为
[[[ 0 6]
[ 1 7]
[ 2 8]]
[[ 3 9]
[ 4 10]
[ 5 11]]]
(2, 3, 2)
这里以元素2所在的位置为例分析,2在变换前位置为(0,0,2),变换后所在位置为(0,2,0),进行transpose((1,2,0))的变换就是把原来索引1的值放在第0位,把原来索引为2的值放在第1位,把原来索引为0的值放在最后一位。