Bibliotecas de Python para Ciencia de Datos e IA

1. ¿Qué es Google Colab y por qué usarlo?

Google Colab es una plataforma gratuita basada en la nube que permite ejecutar código Python en un entorno de Jupyter Notebook. Es ideal para la ciencia de datos e inteligencia artificial porque:

  • No requiere instalación: todo se ejecuta en la nube.
  • Ofrece acceso a GPU y TPU gratuitos.
  • Soporta múltiples bibliotecas de Python preinstaladas.

Para empezar, simplemente ve a Google Colab, inicia sesión con tu cuenta de Google, y crea un nuevo cuaderno (notebook).


2. Introducción a las bibliotecas clave de Python

2.1. Numpy

¿Qué es?

Numpy es una biblioteca para trabajar con arrays multidimensionales y realizar operaciones matemáticas eficientes.

¿Para qué sirve?

  • Manipulación eficiente de datos numéricos.
  • Operaciones algebraicas y matemáticas.

Código básico:

import numpy as np

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

# Operaciones básicas
print("Array:", array)
print("Suma:", np.sum(array))
print("Media:", np.mean(array))

2.2. Pandas

¿Qué es?

Pandas es una biblioteca para manipulación y análisis de datos estructurados, como tablas.

¿Para qué sirve?

  • Carga, limpieza y manipulación de datos tabulares.
  • Exploración y transformación de datasets.

Código básico:

import pandas as pd

# Crear un DataFrame
data = {'Nombre': ['Ana', 'Juan', 'Luis'], 'Edad': [23, 35, 29]}
df = pd.DataFrame(data)

# Ver el DataFrame
print("DataFrame:\n", df)

# Operaciones básicas
print("Edad promedio:", df['Edad'].mean())

2.3. Matplotlib y Seaborn

¿Qué son?

  • Matplotlib: Biblioteca para visualización básica de datos.
  • Seaborn: Extensión de Matplotlib para gráficos más atractivos y estadísticos.

¿Para qué sirven?

  • Crear gráficos como histogramas, dispersión, y barras.
  • Visualizar tendencias y relaciones en los datos.

Código básico:

import matplotlib.pyplot as plt
import seaborn as sns

# Datos para graficar
data = [10, 20, 30, 40, 50]

# Gráfico básico con Matplotlib
plt.plot(data)
plt.title('Gráfico de línea')
plt.show()

# Gráfico avanzado con Seaborn
sns.histplot(data, kde=True)
plt.title('Histograma con KDE')
plt.show()

2.4. Scikit-learn

¿Qué es?

Scikit-learn es una biblioteca para Machine Learning (ML).

¿Para qué sirve?

  • Modelos de ML como regresión, clasificación y clustering.
  • Preprocesamiento de datos.

Código básico:

from sklearn.linear_model import LinearRegression
import numpy as np

# Datos de ejemplo
X = np.array([[1], [2], [3], [4]])
y = np.array([2.5, 4.1, 6.3, 8.0])

# Crear y entrenar un modelo
model = LinearRegression()
model.fit(X, y)

# Predicción
prediction = model.predict([[5]])
print("Predicción para X=5:", prediction)

2.5. TensorFlow y PyTorch

¿Qué son?

  • TensorFlow: Biblioteca de Google para Deep Learning.
  • PyTorch: Alternativa de Facebook, muy popular en investigación.

¿Para qué sirven?

  • Crear y entrenar redes neuronales.
  • Implementar modelos avanzados de inteligencia artificial.

Código básico con TensorFlow:

import tensorflow as tf

# Crear un tensor
tensor = tf.constant([[1, 2], [3, 4]])
print("Tensor:\n", tensor)

# Operaciones básicas
print("Suma:\n", tf.add(tensor, 1))

Código básico con PyTorch:

import torch

# Crear un tensor
tensor = torch.tensor([[1, 2], [3, 4]])
print("Tensor:\n", tensor)

# Operaciones básicas
print("Suma:\n", tensor + 1)

3. Casos de uso de las bibliotecas

Biblioteca Casos de Uso
Numpy Manipulación de grandes arrays y cálculos numéricos rápidos.
Pandas Análisis exploratorio, limpieza de datos y transformación de datasets tabulares.
Matplotlib/Seaborn Visualización de tendencias, distribuciones y relaciones en datos.
Scikit-learn Implementación rápida de modelos de ML, como predicción de ventas o segmentación de clientes.
TensorFlow/PyTorch Entrenamiento de redes neuronales para tareas como reconocimiento de imágenes y procesamiento de lenguaje natural.