垂直和水平连接 numpy 数组

Chi*_*elt 5 arrays numpy concatenation python-2.7

我有一个具有以下格式的 numpy 多维数组数组:

a  = [[1,2],
      [8,9]]
Run Code Online (Sandbox Code Playgroud)

然后我想添加一个包含 3 个值的列表(例如[4,5,6]在水平和垂直的末尾,结果如下:

a = [[1,2,4],
     [8,9,5],
     [4,5,6]]
Run Code Online (Sandbox Code Playgroud)

我需要以某种方式组合 row_stack 和 column_stack 吗?

bog*_*ron 4

hstack这是使用and的一种方法vstack

>>> a  = [[1,2],
...       [8,9]]
>>> x = np.array([4, 5, 6])

>>> b = np.vstack((a, x[:-1]))
>>> print np.hstack((b, x[:, None]))
[[1 2 4]
 [8 9 5]
 [4 5 6]]
Run Code Online (Sandbox Code Playgroud)

您可以将其合并为一行:

>>> print np.hstack((np.vstack((a, x[:-1])), x[:, None]))
[[1 2 4]
 [8 9 5]
 [4 5 6]]
Run Code Online (Sandbox Code Playgroud)