4.
Operaciones básicas con Arrays
Una de las mayores ventajas de NumPy frente a las listas de Python es realizar operaciones
matemáticas de manera vectorizada: aplicar la operación sobre todos los elementos a la vez, sin
escribir bucles explícitos.
4.1 Operaciones aritméticas elemento a elemento
Podemos aplicar directamente operaciones aritméticas ( + , - , * , / , ** ) sobre arrays;
NumPy las ejecuta elemento por elemento.
import numpy as np
a = [Link]([1, 2, 3, 4])
b = [Link]([10, 20, 30, 40])
print("Suma:", a + b) # [11 22 33 44]
print("Resta:", b - a) # [ 9 18 27 36]
print("Multiplicación:", a * b) # [ 10 40 90 160]
print("División:", b / a) # [10. 10. 10. 10.]
print("Potencia:", a ** 2) # [ 1 4 9 16]
👉 Estas operaciones son mucho más rápidas que replicar el cálculo con listas y bucles en
Python.
4.2 Broadcasting en NumPy
El broadcasting permite operar entre arrays de diferentes tamaños o formas, siempre que se
cumplan reglas específicas.
Ejemplo 1: sumar un escalar a un array.
arr = [Link]([1, 2, 3, 4])
print(arr + 5) # [6 7 8 9]
Ejemplo 2: operaciones entre un array 2D y uno 1D.
mat = [Link]([[1, 2, 3],
[4, 5, 6]])
vec = [Link]([10, 20, 30])
print(mat + vec)
Salida:
[[11 22 33]
[14 25 36]]
👉 NumPy expande el array más pequeño para que coincida en dimensiones con el mayor.
4.3 Funciones matemáticas comunes
NumPy incluye funciones que operan elemento a elemento (ufuncs, universal functions).
a) Raíz cuadrada ( [Link] )
arr = [Link]([1, 4, 9, 16])
print("Raíz cuadrada:", [Link](arr)) # [1. 2. 3. 4.]
b) Exponencial ( [Link] )
arr = [Link]([0, 1, 2])
print("Exponencial:", [Link](arr)) # [1. 2.71828183 7.3890561 ]
c) Logaritmo natural ( [Link] )
arr = [Link]([1, np.e, np.e**2])
print("Logaritmo natural:", [Link](arr)) # [0. 1. 2.]
d) Funciones trigonométricas ( [Link] , [Link] )
arr = [Link]([0, [Link]/2, [Link]])
print("Seno:", [Link](arr)) # [0. 1. 0.]
print("Coseno:", [Link](arr)) # [ 1. 0. -1.]
Resumen
Las operaciones + , - , * , / , ** funcionan directamente sobre arrays.
El broadcasting permite operar entre arrays con distintas formas expandiendo dimensiones.
NumPy ofrece funciones matemáticas
como [Link] , [Link] , [Link] , [Link] y [Link] , entre muchas otras.
Nota: Practicar estas operaciones es clave para aprovechar la vectorización y escribir código
científico más veloz.