numpy打乱某维度数据

生成一个数组,按照一定的顺序打乱第三个维度的数据

import numpy as np
a = np.arange(24).reshape(2,4,3)
#a = a[:,:,:,np.newaxis]print(a)
#a1 = a[:,:,0]
#a2 = a[:,:,1]
#a3 = a[:,:,2]

a1 = a[:,:,0].transpose()
a2 = a[:,:,1].transpose()
a3 = a[:,:,2].transpose()

print('------')
print(a1)
print(a1.shape)
b = np.random.permutation([a1,a2,a3])

print('-------')
print(b)
print(b.shape)
print('-------')

print(b.swapaxes(0,2))

输出结果如下

------
[[ 0 12]
 [ 3 15]
 [ 6 18]
 [ 9 21]]
(4, 2)
-------
[[[ 0 12]
  [ 3 15]
  [ 6 18]
  [ 9 21]]

 [[ 1 13]
  [ 4 16]
  [ 7 19]
  [10 22]]

 [[ 2 14]
  [ 5 17]
  [ 8 20]
  [11 23]]]
(3, 4, 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
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值