📊 Big Data & Data Engineering con Python


🔹 Introducción

Python no solo es un lenguaje para aprender a programar, también es una de las herramientas más usadas en el mundo del Big Data y la Ingeniería de Datos. Gracias a su ecosistema de librerías y frameworks, permite:
  • 📂 Conectar con bases de datos SQL y NoSQL.
  • ⚡ Procesar grandes volúmenes de datos con PySpark.
  • 📊 Hacer análisis exploratorio de datos (EDA).
  • 🤖 Entrenar y usar modelos de Machine Learning y NLP (ej. Hugging Face).
  • 📈 Visualizar datos con gráficos interactivos.

📚 Librerías fundamentales

  • Pandas: manejo de datos en tablas, similar a Excel pero con miles de veces más potencia.
  • Numpy: operaciones numéricas y matriciales.
  • Matplotlib / Seaborn: visualización de datos.
  • Scikit-learn: modelos de machine learning clásicos.
  • PySpark: procesamiento distribuido en clústeres (Big Data real).
  • Transformers (Hugging Face): NLP, embeddings, LLMs.
  • SQLAlchemy: conexión a bases de datos SQL.
  • Pymongo: conexión con MongoDB (NoSQL).

⚙️ Ejemplo con Pandas

Cargar, explorar y transformar un dataset de ventas.

import pandas as pd

# Cargar datos
df = pd.read_csv("ventas.csv")

# Ver las primeras filas
print(df.head())

# Estadísticas descriptivas
print(df.describe())

# Filtrar datos
ventas_mayores = df[df["importe"] > 1000]
print(ventas_mayores)

# Agrupar por categoría
resumen = df.groupby("categoria")["importe"].mean()
print(resumen)

📊 EDA: Análisis Exploratorio de Datos

El EDA (Exploratory Data Analysis) es el proceso de explorar y entender los datos antes de aplicar modelos. Es clave para detectar errores, valores nulos, distribuciones y patrones ocultos.

import seaborn as sns
import matplotlib.pyplot as plt

# Histograma
sns.histplot(df["importe"], bins=30, kde=True)
plt.show()

# Correlaciones
sns.heatmap(df.corr(), annot=True, cmap="coolwarm")
plt.show()

⚡ Procesamiento con PySpark

PySpark permite procesar datos en paralelo en grandes clústeres.

from pyspark.sql import SparkSession

# Crear sesión Spark
spark = SparkSession.builder.appName("Ejemplo").getOrCreate()

# Leer CSV en DataFrame de Spark
df_spark = spark.read.csv("ventas.csv", header=True, inferSchema=True)

# Operaciones básicas
df_spark.show(5)
df_spark.groupBy("categoria").avg("importe").show()

# SQL en Spark
df_spark.createOrReplaceTempView("ventas")
spark.sql("SELECT categoria, AVG(importe) as media FROM ventas GROUP BY categoria").show()

🤖 Modelos de Machine Learning y NLP (Hugging Face)

Con Python puedes usar modelos de lenguaje preentrenados (LLMs) para tareas como análisis de sentimiento, resumen de textos o embeddings.

from transformers import pipeline

# Cargar un modelo de análisis de sentimiento
sentiment = pipeline("sentiment-analysis")

texto = "Python es genial para Big Data!"
print(sentiment(texto))

💾 Conexión con Bases de Datos SQL


import sqlalchemy as db

# Conexión a MySQL
engine = db.create_engine("mysql+pymysql://usuario:password@localhost:3306/empresa")

# Leer datos con Pandas
query = "SELECT nombre, salario FROM empleados WHERE salario > 3000"
df = pd.read_sql(query, engine)
print(df.head())

💾 Conexión con Bases de Datos NoSQL (MongoDB)


from pymongo import MongoClient

# Conexión a MongoDB
client = MongoClient("mongodb://localhost:27017/")
db = client["empresa"]
coleccion = db["empleados"]

# Insertar un documento
coleccion.insert_one({"nombre": "Sergio", "puesto": "Data Engineer", "salario": 4000})

# Consultar datos
for empleado in coleccion.find({"salario": {"$gt": 3000}}):
    print(empleado)

📝 Ejercicio práctico

“Carga un dataset de clientes en Pandas, realiza un EDA inicial con histogramas y correlaciones, guarda los datos procesados en una base de datos SQL y finalmente crea un modelo de Hugging Face para analizar el sentimiento de los comentarios de los clientes.”

Nota final: Estos son solo algunos ejemplos básicos de lo mucho que se puede hacer con Python en Big Data e Ingeniería de Datos. Te animo a que investigues, explores nuevas librerías y sobre todo a que practiques. ✅ Recuerda: programar se aprende programando.

Python Básico

Python Básico

Domina lo esencial de Python: variables, control de flujo, funciones y manejo de datos desde cero con ejemplos prácticos. Ideal para empezar a programar.

Python Intermedio

Python Intermedio

Profundiza con listas/diccionarios, manejo de errores y POO. Ejemplos reales para llevar tus habilidades al siguiente nivel.

Todos los derechos reservados © | Política de Privacidad | Política de Cookies
Scroll al inicio