【发布时间】:2017-03-25 20:43:40
【问题描述】:
我的 google-fu 让我失望了!
我有一个numpy数组如下:
0 1 2 3
------------------------
0 | 100 110 120 130
1 | 140 150 160 170
2 | 180 190 200 210
3 | 220 230 240 250
4 | 260 270 280 290
5 | 300 310 320 330
6 | 340 350 360 370
7 | 380 390 400 410
8 | 420 430 440 450
其形状为(9, 4)。我想将上面的数组重塑为以下(6, 6)数组:
0 1 2 3 4 5
-------------------------------------
0 | 100 110 | 140 150 | 180 190
1 | 120 130 | 160 170 | 200 210
-------------------------------------
2 | 220 230 | 260 270 | 300 310
3 | 240 250 | 280 290 | 320 330
-------------------------------------
4 | 340 350 | 380 390 | 420 430
5 | 360 370 | 400 410 | 440 450
我可以通过 2 个for 循环和一些条件来完成。有没有更好的方法在一行代码中使用numpy.reshape 来实现相同的结果?
提前致谢。
【问题讨论】:
标签: python arrays numpy multidimensional-array reshape