【发布时间】:2017-11-10 02:21:16
【问题描述】:
我有两个 numpy 矩阵 A 和 B。A 是 1000 x 6,看起来像:
[ [a1_1, a1_2, a1_3, a1_4, a1_5,a1_6],
[a2_1, a2_2, a2_3, a2_4, a2_5,a2_6],
[a3_1, a3_2, a3_3, a3_4, a3_5,a3_6],
:
:
[a1000_1, a1000_2, a1000_3, a1000_4, a1000_5,a1000_6]]
B 也是 1000x6,就像:
[ [b1_1, b1_2, b1_3, b1_4, b1_5,b1_6],
[b2_1, b2_2, b2_3, b2_4, b2_5,b2_6],
[b3_1, b3_2, b3_3, b3_4, b3_5,b3_6],
:
:
[b1000_1, b1000_2, b1000_3, b1000_4, b1000_5,b1000_6]]
然后我想创建一个 3D 矩阵:1000x6x2,它应该看起来像:
[[[a1_1, b1_1], [a1_2, b1_2], [a1_3, b1_3], [a1_4, b1_4], [a1_5, b1_5],[a1_6, b1_6]],
[[a2_1, b2_1], [a2_2, b2_2], [a2_3, b2_3], [a2_4, b2_4], [a2_5, b2_5],[a2_6, b2_6]],
[[a3_1, b3_1], [a3_2, b3_2], [a3_3, b3_3], [a3_4, b3_4], [a3_5, b3_5],[a3_6, b3_6]],
:
:
[[a1000_1, b1000_1], [a1000_2, b1000_2], [a1000_3, b1000_3], [a1000_4, b1000_4], [a1000_5, b1000_5],[a1000_6, b1000_6]]]
我可以创建一个空的 1000x6x2 矩阵 C,然后迭代矩阵 A 和 B 以将 C 中的值一一赋值。但我想知道有没有更优雅的方法来组合 A 和 B,重塑并获得矩阵 C?谢谢!
【问题讨论】:
-
C[:,:,0] = A,C[:,:,1] = B应该又快又简单。
标签: arrays python-3.x numpy matrix