python - 堆叠矩阵的最佳方法

the*_*log 2 python numpy

我有两个矩阵

[[0,0,0],
 [0,0,0],
 [0,0,0]]

[[1,1,1],
 [1,1,1],
 [1,1,1]]
Run Code Online (Sandbox Code Playgroud)

我想要它们像这样 v-stacked 和 h-stacked

[[0,0,0,1,1,1],
 [0,0,0,1,1,1],
 [0,0,0,1,1,1],
 [1,1,1,0,0,0],
 [1,1,1,0,0,0],
 [1,1,1,0,0,0]]
Run Code Online (Sandbox Code Playgroud)

做这个的最好方式是什么?

Kev*_*vin 8

你可以用 np.block为此:

A = np.array([[0,0,0],
              [0,0,0],
              [0,0,0]])

B = np.array([[1,1,1],
              [1,1,1],
              [1,1,1]])

np.block([[A, B], [B, A]])
Run Code Online (Sandbox Code Playgroud)

输出:

array([[0, 0, 0, 1, 1, 1],
       [0, 0, 0, 1, 1, 1],
       [0, 0, 0, 1, 1, 1],
       [1, 1, 1, 0, 0, 0],
       [1, 1, 1, 0, 0, 0],
       [1, 1, 1, 0, 0, 0]])
Run Code Online (Sandbox Code Playgroud)