楼主: heweiweibaby
22780 5

[问答] numpy中.transpose函数的用法 [推广有奖]

  • 0关注
  • 0粉丝

高中生

12%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
116 点
帖子
5
精华
0
在线时间
36 小时
注册时间
2011-10-30
最后登录
2016-10-17

楼主
heweiweibaby 发表于 2016-4-16 17:41:22 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
  1. import numpy as np
  2. x = np.arange(24).reshape((2,3,4))
  3. print(x)
  4. print(x.transpose((1,0,2))) # shape(3,2,4)

  5. [[[ 0  1  2  3]
  6.   [ 4  5  6  7]
  7.   [ 8  9 10 11]]

  8. [[12 13 14 15]
  9.   [16 17 18 19]
  10.   [20 21 22 23]]]

  11. [[[ 0  1  2  3]
  12.   [12 13 14 15]]

  13. [[ 4  5  6  7]
  14.   [16 17 18 19]]

  15. [[ 8  9 10 11]
  16.   [20 21 22 23]]]
复制代码
我是新手,请问上面代码中的x.transpose((1,0,2))该怎么理解,先谢谢各位了

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Transpose Trans Numpy pose ans import

沙发
qianhongming 发表于 2017-2-27 23:26:12
要理解transpose里参数意义,首先要看x的shape属性,
输入 x.shape, 返回一个无组(2,3,4) 就如你设定的,reshape(2,3,4)
(2,3,4)这个元组的索引(0,1,2) 0对应2,1对应3,2对应4.  .     
  这个由数组X的shape属性的索引组成的元组,才是transpose的真正的意义
代码中transpose参数元组(1,0,2)可以理解为是索引组成的元组,
1对应的还是3,0对应的还是2,2对应的还是4, 通过索引的位置变换,数组X的shape属性为(3,2,4)
**************分隔线*************
如果transpose参数元组(0,2,1),则数组X的shape属性为(2,4,3)
**************分隔线*************

没有进行transpose变换前,每个数都有一个索引,如13的索引为 (1,0,1)  
按照上面的变换,13的索引为(0,1,1)
是不是在  下面的那个位置了? 其它的数字也一样,再如 19 ,之前的索引为(1,1,3),
按照上面的变换,13的索引为(1,1,3)  没为变,
已有 1 人评分经验 论坛币 收起 理由
我的素质低 + 100 + 20 精彩帖子

总评分: 经验 + 100  论坛币 + 20   查看全部评分

藤椅
hanhyojoo1992 发表于 2017-7-20 14:01:55
tranpose中的参数相当于reshape中参数的位置,如果reshape(2,2,4),transpose(0,1,2)就表示不改变原来的arr,如果transpose(0,2,1)相当于reshape(2,4,2)

板凳
TILY1 在职认证  发表于 2018-6-14 17:59:22
qianhongming 发表于 2017-2-27 23:26
要理解transpose里参数意义,首先要看x的shape属性,
输入 x.shape, 返回一个无组(2,3,4) 就如你设定的 ...
13的索引为 (1,0,1)变换成(0,1,1),这个是怎么推出来的啊

报纸
dellHaven 发表于 2019-4-3 15:26:49
看懂了,楼主写的真的是非常好,特地注册账号前来感恩,非常感谢,非常感谢!!!!!

地板
307Hotel 发表于 2019-5-9 16:57:56
代表第几维度

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-29 02:57