Tutorial de Numpy - Apéndice del array de NumPy

Numpy también tiene una función append para añadir datos a el array, al igual que la operación append para list en Python. Pero en algunos casos, append en NumPy es también un poco similar al método extend en la list de Python.

Array append

Primero listemos la sintaxis de ndarray.append.

numpy.append(arr, values, axis = None)

Parámetros de entrada

nombre de parámetro tipo de datos Descripción
arr array_like un array para añadir un elemento
values array_like Matriz añadida
None INT El eje a lo largo del cual se añaden los values

Hagamos algunos ejemplos,

In [1]: import numpy as np
        arrayA = np.arange(12).reshape(3, 4)
        arrayB = np.ones((1, 4))
        np.append(arrayA, arrayB)
        
Out[1]: array([ 0.,  1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.,  9., 10., 11.,  1.,
        1.,  1.,  1.])

Cuando no se da el axis, tanto el arr como los values se aplanan antes de la operación. El resultado será un array 1-D. En el ejemplo anterior, no necesitamos preocuparnos por la forma de dos matrices dadas.

In [2]: np.append(arrayA, arrayB, axis=0)
Out[2]: array([[ 0.,  1.,  2.,  3.],
       [ 4.,  5.,  6.,  7.],
       [ 8.,  9., 10., 11.],
       [ 1.,  1.,  1.,  1.]])
In [2]: np.append(arrayA, np.ones((1, 3)), axis=0)
        ---------------------------------------------------------------------------
        ValueError                                Traceback (most recent call last)
        <ipython-input-25-fe0fb14f5df8> in <module>()
        ----> 1 np.append(arrayA, np.ones((1, 3)), axis=0)

        D:\ProgramData\Anaconda3\lib\site-packages\numpy\lib\function_base.py in append(arr, values, axis)
           5164         values = ravel(values)
           5165         axis = arr.ndim-1
        -> 5166     return concatenate((arr, values), axis=axis)

        ValueError: all the input array dimensions except for the concatenation axis must match exactly

Cuando el axis es igual a 0, los valores del array serán añadidos a la arr en la dirección de la columna. Aumentará el ValueError si dos matrices dadas no tienen la misma longitud en la fila - ValueError: all the input array dimensions except for the concatenation axis must match exactly.

Puedes intentar por ti mismo añadir los datos en la dirección de la fila con el parámetro axis=1.