【发布时间】:2018-07-07 03:28:33
【问题描述】:
堆栈数组/矩阵是否有更简洁的语法?在 MatLab 中,您可以简单地执行 [x, y] 来水平堆叠,然后 [x; y] 垂直堆叠,可以很方便地串起来,比如[x, x; y, y];而在python中,似乎比较繁琐,见下图:
import numpy as np
x = np.array([[1, 1, 1], [1, 2, 3]])
y = x*10
np.vstack((x, y))
array([[ 1, 1, 1],
[ 1, 2, 3],
[10, 10, 10],
[10, 20, 30]])
np.hstack((x, y))
array([[ 1, 1, 1, 10, 10, 10],
[ 1, 2, 3, 10, 20, 30]])
np.vstack((np.hstack((x, x)), np.hstack((y, y))))
array([[ 1, 1, 1, 1, 1, 1],
[ 1, 2, 3, 1, 2, 3],
[10, 10, 10, 10, 10, 10],
[10, 20, 30, 10, 20, 30]])
【问题讨论】:
标签: python python-3.x matlab numpy