Una función que frecuentemente resulta muy útil es numpy.concatenate, función que nos permite unir dos o más arrays a lo largo de un cierto eje. Su sintaxis básica es la siguiente:
np.concatenate((a1, a2, ... an), axis = 0)
Donde ai es un array. Éstos deberán ser todos del mismo tamaño excepto en la dimensión a lo largo de la cual se va a realizar la concatenación, representado por el parámetro axis (que toma el valor 0 por defecto). Veamos un par de ejemplos:
a = np.array([1, 2, 3])
a
b = np.array([4, 5, 6])
b
np.concatenate((a, b))
En este ejemplo estamos trabajando con arrays unidimensionales, de forma que no hay otra opción más que concatenarlos a lo largo de este eje. Sin embargo, si los convertimos en arrays bidimensionales de dimensiones (1, 3):
a = np.array([1, 2, 3]).reshape(1, -1)
a
b = np.array([4, 5, 6]).reshape(1, -1)
b
...podemos seguir concatenándolos verticalmente:
np.concatenate((a, b))
...u horizontalmente si especificamos como eje de concatenación el eje 1:
np.concatenate((a, b), axis = 1)