Numpy: producto cartesiano de los puntos de matriz xey en una matriz única de puntos 2D

Tengo dos matrices numpy que definen los ejes x e y de una cuadrícula. Por ejemplo:

x = numpy.array([1,2,3])
y = numpy.array([4,5])

Me gustaría generar el producto cartesiano de estos arreglos para generar:

array([[1,4],[2,4],[3,4],[1,5],[2,5],[3,5]])

En cierto modo, no es terriblemente ineficiente, ya que tengo que hacer esto muchas veces en un bucle. Supongo que convertirlos a una lista de Python y usaritertools.product y volver a una matriz numpy no es la forma más eficiente.

Respuestas a la pregunta(11)

Su respuesta a la pregunta