我目前正在做类似的事情:
In [75]: a = np.arange(7)
In [76]: b = np.arange(3 * 7).reshape([3, 7])
In [77]: np.stack([a, *b], axis=1)
Out[77]:
array([[ 0, 0, 7, 14],
[ 1, 1, 8, 15],
[ 2, 2, 9, 16],
[ 3, 3, 10, 17],
[ 4, 4, 11, 18],
[ 5, 5, 12, 19],
[ 6, 6, 13, 20]])
在不需要解压缩np.stack
的情况下,有没有b
更好的选择?我想知道最可读的方法是什么。
答案 0 :(得分:1)
您可以转置b
,然后使用np.column_stack
:
np.column_stack((a, b.T))
#array([[ 0, 0, 7, 14],
# [ 1, 1, 8, 15],
# [ 2, 2, 9, 16],
# [ 3, 3, 10, 17],
# [ 4, 4, 11, 18],
# [ 5, 5, 12, 19],
# [ 6, 6, 13, 20]])