1. Introducción a NumPy

Es muy importante que pruebes los distintos programas para entender la biblioteca NumPy y, si todavía no dominás Python, te recomiendo hacer el curso de Python Ya.

¿Qué es NumPy y por qué es fundamental en Ciencia de Datos?

NumPy (Numerical Python) es una librería de Python especializada en el manejo de arreglos multidimensionales (arrays) y en la realización de cálculos numéricos de alto rendimiento.

En ciencia de datos, NumPy es considerada una herramienta esencial porque:

  • Permite trabajar con grandes volúmenes de datos de forma eficiente.
  • Ofrece arrays mucho más rápidos y flexibles que las listas nativas de Python.
  • Incluye operaciones vectorizadas que evitan el uso de bucles innecesarios.
  • Contiene funciones matemáticas avanzadas y herramientas de álgebra lineal, estadística y números aleatorios.
  • Es la base sobre la cual se construyen otras librerías muy usadas como Pandas, Matplotlib, scikit-learn y TensorFlow.

En pocas palabras: si querés hacer análisis de datos, machine learning o cálculos científicos, NumPy es la base.

Instalación y primer import

Para instalar NumPy, se usa pip (el gestor de paquetes de Python):

pip install numpy

Una vez instalado, la convención es importarlo con el alias np:

import numpy as np

# Crear un array simple
arr = np.array([10, 20, 30, 40])

print("Array de NumPy:", arr)
print("Tipo:", type(arr))
Ejemplo de salida en consola para un array de NumPy

Salida esperada:

Array de NumPy: [10 20 30 40]
Tipo: <class 'numpy.ndarray'>

Diferencia entre listas de Python y arrays de NumPy

Listas de Python

Las listas son estructuras muy versátiles que pueden almacenar diferentes tipos de datos: enteros, cadenas, objetos, etc. Sin embargo, no están optimizadas para cálculos matemáticos con grandes volúmenes de datos.

Ejemplo con listas:

# Lista de Python
lista = [1, 2, 3, 4, 5]

# Intentar sumar 2 a cada elemento
nueva_lista = [x + 2 for x in lista]
print(nueva_lista)  # [3, 4, 5, 6, 7]
  • Se necesita un bucle para aplicar operaciones.
  • La velocidad no es la mejor si trabajamos con millones de elementos.

Arrays de NumPy

Un array de NumPy es similar a una lista, pero todos los elementos deben ser del mismo tipo de dato (int, float, etc.). La gran diferencia es que permite aplicar operaciones de manera vectorizada, es decir, sobre todos los elementos a la vez y sin bucles explícitos.

Ejemplo con arrays:

import numpy as np

# Crear un array de NumPy
arr = np.array([1, 2, 3, 4, 5])

# Operaciones vectorizadas
print(arr + 2)   # [3 4 5 6 7]
print(arr * 3)   # [ 3  6  9 12 15]
print(arr ** 2)  # [ 1  4  9 16 25]

Ventajas de NumPy sobre listas

  • Mucho más rápido (usa código optimizado en C).
  • Ocupa menos memoria.
  • Permite trabajar con matrices y tensores de varias dimensiones.
  • Incluye funciones matemáticas listas para usar.

👉 Con esto ya tenemos la base para trabajar con NumPy: sabemos qué es, por qué se usa, en qué se diferencia de las listas de Python y cómo instalarlo/importarlo.