Это то, что вы хотите? Я использовал функцию np.repeat
для повторения каждого отдельного элемента (первый массив) и np.tile
для повторения всего массива (второй массив).
>>> import numpy as np
>>> a = np.array([[1],[2],[3]])
>>> b = np.array([[4],[5]])
>>>
>>> at = np.repeat(a, len(b), axis = 0)
>>> at
array([[1],
[1],
[2],
[2],
[3],
[3]])
>>> bt = np.tile(b, (len(a), 1))
>>> bt
array([[4],
[5],
[4],
[5],
[4],
[5]])
>>> np.concatenate((at, bt), axis = 1)
array([[1, 4],
[1, 5],
[2, 4],
[2, 5],
[3, 4],
[3, 5]])