Numpy: Operaciones con arrays

Numpy
Numpy
Actualizado: 13/03/2025

Una de sus funcionalidades más destacadas es la capacidad de realizar operaciones con arrays de manera eficiente. En esta sección, exploraremos cómo trabajar con arrays en Numpy, desde la creación hasta la manipulación y operaciones avanzadas.

Creación de arrays

Para empezar a trabajar con arrays en Numpy, primero debemos importarla y crear algunos arrays básicos:

import numpy as np

# Crear un array unidimensional
array_1d = np.array([1, 2, 3, 4, 5])

# Crear un array bidimensional
array_2d = np.array([[1, 2, 3], [4, 5, 6]])

# Crear un array de ceros
array_zeros = np.zeros((3, 3))

# Crear un array de unos
array_ones = np.ones((2, 4))

Operaciones aritméticas básicas

Numpy permite realizar operaciones aritméticas elementales de manera sencilla y eficiente:

# Suma
suma = array_1d + 10

# Resta
resta = array_1d - 2

# Multiplicación
multiplicacion = array_1d * 3

# División
division = array_1d / 2

Estas operaciones se aplican elemento por elemento, lo que facilita el procesamiento de datos en masa.

Operaciones con arrays de diferentes dimensiones

Una de las características más útiles de Numpy es la capacidad de realizar operaciones entre arrays de diferentes dimensiones mediante broadcasting:

array_a = np.array([[1, 2, 3], [4, 5, 6]])
array_b = np.array([1, 2, 3])

# Broadcasting: suma de array bidimensional y unidimensional
resultado = array_a + array_b

En este ejemplo, array_b se expande para coincidir con la forma de array_a, permitiendo la operación entre ambos arrays.

Funciones matemáticas

Numpy incluye una amplia variedad de funciones matemáticas para realizar operaciones complejas:

# Raíz cuadrada
raiz_cuadrada = np.sqrt(array_1d)

# Exponencial
exponencial = np.exp(array_1d)

# Logaritmo natural
logaritmo = np.log(array_1d)

Estas funciones son altamente optimizadas y aprovechan las capacidades de procesamiento del hardware.

Agregación y reducción

Numpy también ofrece funciones para realizar operaciones de agregación y reducción, como sumas, promedios y productos:

# Suma de todos los elementos
suma_total = np.sum(array_1d)

# Promedio de los elementos
promedio = np.mean(array_1d)

# Producto de todos los elementos
producto_total = np.prod(array_1d)

Estas operaciones pueden aplicarse a arrays de cualquier dimensión y pueden especificarse a lo largo de un eje particular:

# Suma a lo largo del eje 0 (columnas)
suma_eje_0 = np.sum(array_2d, axis=0)

# Suma a lo largo del eje 1 (filas)
suma_eje_1 = np.sum(array_2d, axis=1)

Indexación y slicing

La indexación y el slicing son fundamentales para manipular arrays y extraer subarrays:

# Acceder a un elemento específico
elemento = array_2d[1, 2]

# Slicing para extraer una submatriz
submatriz = array_2d[0:2, 1:3]

Manipulación de la forma del array

Cambiar la forma de un array es una operación común en Numpy:

# Reshape: cambiar la forma del array
array_reshaped = array_1d.reshape((5, 1))

# Transposición de un array
array_transposed = array_2d.T

Estas operaciones permiten ajustar los datos a las necesidades específicas de cada análisis.

Trabajar con arrays en Numpy es una habilidad fundamental para cualquier ingeniero de software que maneje grandes volúmenes de datos. La eficiencia y flexibilidad que ofrece esta librería la convierten en una herramienta indispensable en el ecosistema de Python.

Lecciones de este módulo

Explora todas las lecciones disponibles en Operaciones con arrays

Explora más sobre Numpy

Descubre más recursos de Numpy

Alan Sastre - Autor del curso

Alan Sastre

Ingeniero de Software y formador, CEO en CertiDevs

Ingeniero de software especializado en Full Stack y en Inteligencia Artificial. Como CEO de CertiDevs, Numpy es una de sus áreas de expertise. Con más de 15 años programando, 6K seguidores en LinkedIn y experiencia como formador, Alan se dedica a crear contenido educativo de calidad para desarrolladores de todos los niveles.