Combinando DataFrames

Lectura
12 min~2 min lectura
Objetivo de la lección

Trabaja con un caso propio o con una empresa ficticia, pero deja claro el problema, la decision y el resultado.

Puntos de control
  • Uniendo datos
  • Concat: Apilar DataFrames
  • Merge: JOIN como SQL
  • Join: Por indice

Uniendo datos

Concat: Apilar DataFrames

import pandas as pd

df1 = pd.DataFrame({'A': [1, 2], 'B': [3, 4]})
df2 = pd.DataFrame({'A': [5, 6], 'B': [7, 8]})

# Apilar verticalmente (filas)
pd.concat([df1, df2])
#    A  B
# 0  1  3
# 1  2  4
# 0  5  7
# 1  6  8

# Resetear indice
pd.concat([df1, df2], ignore_index=True)

# Apilar horizontalmente (columnas)
pd.concat([df1, df2], axis=1)

Merge: JOIN como SQL

# DataFrames de ejemplo
clientes = pd.DataFrame({
    'id': [1, 2, 3],
    'nombre': ['Ana', 'Luis', 'Maria']
})
pedidos = pd.DataFrame({
    'cliente_id': [1, 1, 2, 4],
    'producto': ['A', 'B', 'C', 'D']
})

# Inner join (solo coincidencias)
pd.merge(clientes, pedidos, left_on='id', right_on='cliente_id')

# Left join (todos los de la izquierda)
pd.merge(clientes, pedidos, left_on='id', right_on='cliente_id', how='left')

# Right join
pd.merge(clientes, pedidos, left_on='id', right_on='cliente_id', how='right')

# Outer join (todos)
pd.merge(clientes, pedidos, left_on='id', right_on='cliente_id', how='outer')

# Mismo nombre de columna
pd.merge(df1, df2, on='id')

Join: Por indice

df1 = pd.DataFrame({'A': [1, 2]}, index=['a', 'b'])
df2 = pd.DataFrame({'B': [3, 4]}, index=['a', 'b'])

df1.join(df2)
#    A  B
# a  1  3
# b  2  4

Guardando datos

# CSV
df.to_csv('resultado.csv', index=False)

# Excel
df.to_excel('resultado.xlsx', index=False)

# JSON
df.to_json('resultado.json', orient='records')

# Parquet (eficiente)
df.to_parquet('resultado.parquet')

Practica de portfolio

Convierte esta leccion en evidencia real: arma una entrega pequena que puedas mostrar en una entrevista, en LinkedIn o en tu portfolio. Trabaja con un caso propio o con una empresa ficticia, pero deja claro el problema, la decision y el resultado.

  • Entregable: una captura, documento, repositorio o tablero con el resultado final.
  • Checklist: objetivo, pasos seguidos, criterio de calidad y mejora pendiente.
  • Mini-rubrica: si otra persona lo revisa, debe entender que hiciste, por que y como repetirlo.
Laboratorio de práctica

Antes de marcar esta lección como completa, escribí una evidencia breve para Python para Data Science: un ejemplo, una decisión, una captura, una mini demo o una nota que puedas reutilizar en portfolio.

Reflexión rápida

¿Qué cambiarías en tu forma de trabajar después de aplicar combinando dataframes?

De lección a portfolio

Convertí esta lección en evidencia para Data Analyst.

Sumá un mini caso con datos, una conclusión de negocio y una captura del resultado. Eso pesa más que decir que viste la herramienta.

Paso 1

Publicá una consulta, dashboard o notebook con una conclusión clara.

Paso 2

Agregá contexto: problema, dato usado, decisión recomendada y limitación.

Paso 3

Guardá el enlace en tu CV, LinkedIn o portfolio antes de postular.

Newsletter Cursalo

Recibí rutas y cursos nuevos

Sumate para recibir recursos orientados a empleo y portfolio.

  • Rutas de empleo
  • Cursos prácticos
  • Portfolio y entrevistas

Sin spam. También podés entrar con tu cuenta para guardar progreso. Iniciá sesión