Logo de CursoIA
CursoIA Curso de Inteligencia Artificial

Álgebra lineal aplicada a IA, Unidad 13 — Siguientes pasos, 13.2 — Ruta recomendada en comoprogramar.es ·

NumPy desde cero

NumPy desde cero

Introducción

NumPy es una biblioteca fundamental para la programación científica y de datos en Python. Es especialmente valioso para el procesamiento numérico, ya que proporciona estructuras de datos eficientes (arrays) y herramientas matemáticas directamente aplicables a estos arrays. NumPy es un paso crucial antes de adentrarse en el Machine Learning (ML) y el Deep Learning (DL), ya que muchos marcos de trabajo modernos, como TensorFlow o PyTorch, se basan en operaciones NumPy para optimizar su rendimiento.

Explicación principal con ejemplos

NumPy introduce una estructura de datos bidimensional llamada ndarray (n-dimensional array). Este tipo de dato permite almacenar y manipular grandes cantidades de datos en forma de matrices o tensores, lo que es esencial para el ML y DL.

Ejemplo: Creación e impresión de un ndarray

import numpy as np

# Creando un ndarray a partir de una lista
arr = np.array([[1, 2, 3], [4, 5, 6]])
print(arr)

Este código crea un array bidimensional (matriz) y lo imprime. La salida es:

[[1 2 3]
 [4 5 6]]

NumPy también ofrece una serie de funciones útiles para manipular estos arrays. Por ejemplo, la función np.zeros crea un ndarray lleno de ceros.

Ejemplo: Creación de un array con elementos en cero

# Creando un ndarray de dimension 3x3 lleno de ceros
zeros_arr = np.zeros((3, 3))
print(zeros_arr)

La salida será:

[[0. 0. 0.]
 [0. 0. 0.]
 [0. 0. 0.]]

Ejemplo: Operaciones básicas con ndarray

# Creando dos arrays de ejemplo
arr1 = np.array([1, 2, 3])
arr2 = np.array([4, 5, 6])

# Suma de los arrays
sum_arr = arr1 + arr2
print(sum_arr)

La salida será:

[5 7 9]

Errores típicos / trampas

  1. Confusión entre np.array y list: A veces, se confunden las listas de Python con los ndarray. Por ejemplo, una lista es mutable, mientras que un ndarray no lo es.
  1. Operaciones ineficientes: Algunos programadores pueden realizar operaciones en bucles con listas en lugar de usar arrays NumPy, lo cual puede ser extremadamente lento para grandes cantidades de datos.
  1. Manipulación incorrecta de dimensiones: Es fácil olvidar el uso del .reshape() o la transposición de un array, lo que puede llevar a errores en operaciones matemáticas y visualizaciones.

Checklist accionable

  1. Instalar NumPy con pip install numpy.
  2. Familiarizarse con las estructuras de datos básicas: arrays 1D y 2D.
  3. Utilizar funciones básicas como np.zeros, np.ones, np.arange para crear arrays.
  4. Practicar operaciones aritméticas elementales (suma, resta, multiplicación).
  5. Dominar la transposición de matrices con arr.T.
  6. Aprender a manipular dimensiones con np.reshape() y np.resize().
  7. Utilizar funciones de agregación como np.sum, np.mean, np.max.

Cierre: Siguientes pasos

  • Revisar documentación oficial: El manual de NumPy ofrece una visión completa de las características y funcionalidades.
  • Ejercicios prácticos: Trabaja con datasets reales para mejorar tus habilidades.
  • Aplicaciones avanzadas: Explora la manipulación de tensores multidimensionales, operaciones booleanas y funciones vectorizadas.

NumPy es una herramienta poderosa que puede abrir las puertas a un mundo de posibilidades en el análisis numérico e investigación científica. Una vez dominada esta biblioteca, estás listo para avanzar a la programación de ML y DL con confianza.

Contacto

Indica tu objetivo (ChatGPT, RAG, agentes, automatización) y tu stack (web/backend).