Ir al contenido principal
Documentos
conceptos básicosOperaciones con arreglos

NumPy append()

La función `append()` de NumPy se utiliza para añadir elementos al final de un arreglo existente, creando así un nuevo arreglo con los elementos adicionales. Esta operación resulta útil cuando necesitas ampliar el contenido de un arreglo de forma dinámica.

Uso

La función `append()` se utiliza normalmente cuando se desea añadir más datos a un arreglo sin alterar el arreglo original. Devuelve un nuevo arreglo con los valores añadidos.

numpy.append(arr, values, axis=None)
  • arr: El arreglo de entrada al que se añaden los elementos.
  • values: Los valores que se añadirán a arr. Ten en cuenta que sivalues tienen un tipo de datos diferente al de arr, el arreglo resultante tendrá un tipo de datos determinado por las reglas de promoción de tipos de NumPy.
  • axis: El eje a lo largo del cualvalues se añaden. Si None,values se aplanan antes de su uso. Cuandoaxisse especifica ,valuesdebe tener la misma forma que ,arr excepto por la dimensión correspondiente al eje especificado.

Ejemplos

1. Añadir elementos a un arreglo 1D

import numpy as np

arr = np.array([1, 2, 3])
new_arr = np.append(arr, [4, 5])

En este ejemplo, los elementos[4, 5] se añaden al arreglo arr, lo que da comonew_arrresultado [1, 2, 3, 4, 5].

2. Añadir elementos a un arreglo 2D sin ejes

import numpy as np

arr = np.array([[1, 2], [3, 4]])
new_arr = np.append(arr, [5, 6])

Aquí,append() aplanaarr y luego añade [5, 6], lo que da comonew_arrresultado [1, 2, 3, 4, 5, 6].

3. Añadir elementos a un arreglo 2D a lo largo de un eje

import numpy as np

arr = np.array([[1, 2], [3, 4]])
new_arr = np.append(arr, [[5, 6]], axis=0)

Aquí,[[5, 6]] se añade como una nueva fila aarr a lo largo del eje 0, creandonew_arr como [[1, 2], [3, 4], [5, 6]].

Consejos y mejores prácticas

  • Evita las adiciones frecuentes. Llamar repetidamenteappend() en un bucle puede resultar ineficaz; considera la posibilidad de utilizar listas para la acumulación y convertirlas en arreglos una vez recopilados todos los datos.
  • Utiliza el eje con cuidado. Cuando utilices elaxisparámetro, asegúrate de que las dimensiones devaluescoincidan con las dearra lo largo del eje especificado. Por ejemplo, si se añade a lo largo del eje 0,values debería tener el mismo número de columnas que arr.
  • Recuerda la inmutabilidad.append() no modifica el arreglo original, sino que crea uno nuevo, así que asegúrate de almacenar el resultado si es necesario.
  • Ten en cuenta el rendimiento. Añadir elementos a arreglos grandes puede consumir muchos recursos; considera métodos alternativos para mejorar la eficiencia.