Construye y ejecuta un prompt en ChatGPT solicitando que lea las tres bases de datos y cree una única tabla concatenándolas. Recuerda ser bastante específico en cuanto al orden de las columnas y cuáles serán necesarias para realizar la concatenación de los datos, además de tratar la columna de fecha para el formato adecuado.
PROMPT:
Crea un código en Python utilizando la librería Pandas para consolidar tres bases de datos de Zoop.
Lee los archivos CSV desde estas URLs:
url_clientes = "https://gist.githubusercontent.com/ahcamachod/d08898e1cc84c7271856e78d9558ca3d/raw/2f7e1fa53711efe6433a5c5ec79948f600591cb9/clientes_zoop.csv"
url_ventas = "https://gist.githubusercontent.com/ahcamachod/966d7162a3c3a2769b8770b35abf1bcc/raw/d79941b3fa46a450f3611589abd8663399c1277b/ventas_zoop.csv"
url_zoop_pay = "https://gist.githubusercontent.com/ahcamachod/ce728231a836a973c0df94a9f03ed871/raw/8db6da43d7cd94fcab937208067d0fceb521b78c/zoop_pay.csv"
Une (merge) los DataFrames de 'clientes' y 'ventas' a través de la columna de identificación de compra para crear un DataFrame principal llamado df.
Concatena o integra la base de 'zoop_pay' a df para generar una tabla consolidada final.
Asegúrate de transformar las columnas de fecha al formato datetime (YYYY-MM-DD).
Organiza las columnas de forma lógica (empezando por IDs y fechas) y muestra las primeras filas del resultado final para verificar la unión.
import pandas as pd
# URLs de las fuentes de datos
url_clientes = "https://gist.githubusercontent.com/ahcamachod/d08898e1cc84c7271856e78d9558ca3d/raw/2f7e1fa53711efe6433a5c5ec79948f600591cb9/clientes_zoop.csv"
url_ventas = "https://gist.githubusercontent.com/ahcamachod/966d7162a3c3a2769b8770b35abf1bcc/raw/d79941b3fa46a450f3611589abd8663399c1277b/ventas_zoop.csv"
url_zoop_pay = "https://gist.githubusercontent.com/ahcamachod/ce728231a836a973c0df94a9f03ed871/raw/8db6da43d7cd94fcab937208067d0fceb521b78c/zoop_pay.csv"
# Lectura de las bases de datos
df_clientes = pd.read_csv(url_clientes)
df_ventas = pd.read_csv(url_ventas)
df_zoop_pay = pd.read_csv(url_zoop_pay)
# Unión de clientes y ventas (Merge por identificador de compra)
df = pd.merge(df_clientes, df_ventas, on='id_compra', how='inner')
# Consolidación con Zoop Pay
df_final = pd.concat([df, df_zoop_pay], axis=0, ignore_index=True)
# Tratamiento de fechas
if 'fecha' in df_final.columns:
df_final['fecha'] = pd.to_datetime(df_final['fecha'])
# Orden de columnas (Ejemplo de organización lógica)
columnas_ordenadas = ['id_compra', 'fecha', 'cliente', 'valor', 'metodo_pago'] + \
[col for col in df_final.columns if col not in ['id_compra', 'fecha', 'cliente', 'valor', 'metodo_pago']]
df_final = df_final[columnas_ordenadas]
# Visualización del resultado
print("Resumen de la tabla consolidada:")
print(df_final.info())
print(df_final.head())