Para cada punto de una matriz, encuentre el punto más cercano en una segunda matriz y genere ese índice

Si tengo dos matrices:

X = np.random.rand(10000,2)
Y = np.random.rand(10000,2)

¿Cómo puedo, para cada punto en X, averiguar qué punto en Y está más cerca de él? Así que al final tengo una matriz que muestra:

x1_index   y_index_of_closest
   1               7
   2               54
   3               3
  ...             ...

Quiero hacer esto para ambas columnas en X y comparar cada una con cada columna y valor en Y

Respuestas a la pregunta(2)

Su respuesta a la pregunta