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: Prompt que podrías usar en ChatGPT: Lee las tres bases de datos desde las URLs proporcionadas (clientes, ventas y zoop_pay). Primero, concatena las bases de clientes y ventas en un único DataFrame llamado df, usando la columna ID_compra como llave. Asegúrate de convertir la columna fecha al tipo datetime. Luego, concatena este nuevo DataFrame con la base de datos de clientes pre-registrados en Zoop Pay (zoop_pay). Reorganiza las columnas en este orden:
ID_compra
fecha
horario
categoria
preco_unitario
quantidade
envio
metodo_pago
ID_cliente
idade
sexo_biologico
cidade
estado
regiao
cashback
nota
import pandas as pd
# 1. Leer las tres bases de datos desde las 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"
clientes = pd.read_csv(url_clientes)
ventas = pd.read_csv(url_ventas)
zoop_pay = pd.read_csv(url_zoop_pay)
# 2. Convertir columna de fecha a formato datetime
ventas['fecha'] = pd.to_datetime(ventas['fecha'], dayfirst=True)
# 3. Unir clientes y ventas usando la columna 'ID_compra'
df = pd.merge(ventas, clientes, on='ID_compra')
# 4. Reordenar las columnas
orden_columnas = [
'ID_compra',
'fecha',
'horario',
'categoria',
'preco_unitario',
'quantidade',
'envio',
'metodo_pago',
'ID_cliente',
'idade',
'sexo_biologico',
'cidade',
'estado',
'regiao',
'cashback',
'nota'
]
df = df[orden_columnas]
# 5. Concatenar df con zoop_pay (clientes pre-registrados)
df_final = pd.concat([df, zoop_pay], ignore_index=True)
# 6. Mostrar las primeras filas del DataFrame consolidado
df_final.head()