Python

Numpy básico: como añadir elementos en arrays de Numpy con np.append()

np.append() es uno de los métodos básicos de Numpy, con el que es posible agregar nuevos elementos al final de los arrays de Numpy. A pesar de se un método básico tiene múltiples opciones y usos que es importante conocer. En esta entrada se va a ver como añadir elementos en arrays de Numpy con np.append().

El método np.append()

El método que ofrece el módulo Numpy de Python para agregar elementos al final de un array es np.append(). Un método que tiene la siguiente forma:

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

en donde

  • arr: es un array de Numpy.
  • values: son los valores que se agregan al final del array que se pasa en el parámetro anterior. Este elemento puede ser también un array de Numpy.
  • axis: es el eje opcional en el que se agregan los valores.

Es importante saber que el método no modifica el array original, sino que crea una copia a la que le agrega los nuevos valores.

Por otro lado, sin no se indica un valor para axis y arr es un matriz el objeto se aplanará antes de agregar los nuevos elementos. Siendo las posibles opciones de este parámetro:

  • 0: los valores se agregarán en el eje 0, es decir, se agregará nuevas filas.
  • 1: los valores se agregarán en el eje 1, es decir, se agregará nuevas columnas.

Agregar elementos al final de arrays de Numpy

El modo básico de utilizar np.append() es simplemente agregar un elemento al final de un array. Un elemento que puede ser un escalar

import numpy as np

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

O también se puede agregar otro array.

np.append(arr, [11, 12])
array([ 1,  2,  3,  4,  5, 11, 12])

En este último ejemplo se puede observar como el vector original no se modificó, ya que no aparece el elemento 10 en el segundo caso.

Agregar elementos en matrices

Además de con arrays el método np.append() también se puede emplear en matrices. Como se ha comentado anteriormente es necesario indicar mediante la propiedad axis si los nuevos elementos se agregan por filas o columnas. En el caso de que no se indique el parámetro la matriz de aplanara antes de agregar los elementos, obteniéndose como resultado un array. Esto es lo que se puede ver en el siguiente ejemplo:

mat = np.array([[1, 2, 3],[4, 5, 6]])
np.append(mat, [11, 12])
array([ 1,  2,  3,  4,  5,  6, 11, 12])

Si se quiere agregar una nueva fila el segundo elemento tiene que ser una matriz con el mismo número de columnas que la original. Además, es necesario asignar el valor 0 al parámetro axis.

np.append(mat, [[11, 12, 13]], axis=0)
array([[ 1,  2,  3],
       [ 4,  5,  6],
       [11, 12, 13]])

Por otro lado, para agregar una nueva columna el método funciona exactamente igual. Los valores que se agregan tienen que venir en una matriz con el mismo número de filas que la original y se tiene que asignar el valor 1 al parámetro axis.

np.append(mat, [[11], [12]], axis=1)
array([[ 1,  2,  3, 11],
       [ 4,  5,  6, 12]])

Conclusiones

En esta entrada se ha visto cómo añadir elementos en arrays de Numpy con np.append(). Un método básico pero que es importante conocer en profundidad ya que posiblemente sea uno de los más utilizados de Numpy.

Imágenes: Pixabay (Marit Welker)

¿Te ha parecido de utilidad el contenido?

Daniel Rodríguez

Share
Published by
Daniel Rodríguez
Tags: NumPy

Recent Posts

Segmentación RFM: cómo clasificar tu cartera de clientes antes de calcular el CLV

En un artículo anterior vimos la fórmula clásica del CLV junto a sus limitaciones. Una…

2 días ago

Los récords con asterisco, o la épica del titular sin contexto – El bestiario de los indicadores económicos absurdos (parte 8 y final)

Y llegamos al final de una serie que había programado para ser de tres entradas.…

7 días ago

PSI: Cómo Saber Cuándo tu Modelo de Credit Scoring se ha Degradado

Un modelo de credit scoring no es un artefacto estático. Se construye en un momento…

1 semana ago

Los indicadores que se autocumplen, o cuando medir es modificar – El bestiario de los indicadores económicos absurdos (parte 7)

En las seis entregas anteriores hemos paseado por casi todos los géneros del disparate económico:…

2 semanas ago

Customer Lifetime Value: la fórmula clásica que todo analista debería dominar

El Customer Lifetime Value (CLV) es, probablemente, la métrica más importante que puede calcular una…

2 semanas ago

Analytics Lane lanza la versión 1.4 del laboratorio con nuevas herramientas de conversión y modelos avanzados de CLV

Seguimos ampliando el laboratorio de Analytics Lane con el lanzamiento de la versión 1.4, que…

3 semanas ago

This website uses cookies.