Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
Ya estoy inscrito ¿Todavía no tienes acceso? Nuestros Planes
0
respuestas

Respuesta al foro – Desafío Zoop Pay

Hola compañeros,

Para resolver el desafío propuesto, primero realicé la lectura de las tres bases de datos desde las URLs proporcionadas. Luego, uní las bases de ventas y clientes utilizando como clave la columna ID_compra. A continuación, organicé las columnas en el orden solicitado para facilitar el análisis.

Después, uní este DataFrame resultante con la base de zoop_pay a través de la columna ID_cliente, y finalmente ajusté el formato de la columna fecha a tipo datetime con el formato "YYYY-MM-DD".

Comparto a continuación el código completo que utilicé en Google Colab:

Importar pandas

import pandas as pd

URLs de los datasets

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"

Leer los datos desde las URLs

clientes = pd.read_csv(url_clientes)
ventas = pd.read_csv(url_ventas)
zoop_pay = pd.read_csv(url_zoop_pay)

Unir 'ventas' y 'clientes' usando 'ID_compra' como clave

df = pd.merge(ventas, clientes, on="ID_compra")

Ordenar columnas según lo solicitado

columnas_ordenadas = [
"ID_compra", "fecha", "horario", "categoria", "precio_unitario", "cantidad",
"envio", "metodo_pago", "ID_cliente", "edad", "sexo_biologico", "ciudad",
"estado", "region", "cashback", "nota"
]
df = df[columnas_ordenadas]

Unir con la base de datos 'zoop_pay' usando 'ID_cliente'

df = pd.merge(df, zoop_pay, on="ID_cliente")

Convertir la columna 'fecha' a formato datetime

df['fecha'] = pd.to_datetime(df['fecha'], format='%Y-%m-%d')

Mostrar las primeras filas para verificar el resultado

df.head()

Ingrese aquí la descripción de esta imagen para ayudar con la accesibilidad