1 parte
import pandas as pd
# URLs dos arquivos CSV
url_clientes = "https://raw.githubusercontent.com/alura-cursos/ia-datascience-dataviz/main/dados/zoop_clientes.csv"
url_vendas = "https://raw.githubusercontent.com/alura-cursos/ia-datascience-dataviz/main/dados/zoop_vendas.csv"
# Leitura dos arquivos CSV
df_clientes = pd.read_csv(url_clientes)
df_vendas = pd.read_csv(url_vendas)
# Mesclando os DataFrames usando a chave 'ID_compra'
df = pd.merge(df_vendas, df_clientes, on='ID_compra', how='inner')
# Lista de colunas na ordem desejada
colunas_ordenadas = [
"ID_compra", "data", "horario", "categoria", "preco_unitario",
"quantidade", "frete", "metodo_pagamento", "ID_cliente", "idade",
"sexo_biologico", "cidade", "uf", "regiao", "cashback", "avaliacao_compra"
]
# Reorganizando as colunas
df = df[colunas_ordenadas]
# Convertendo coluna 'data' para tipo datetime, se necessário
df["data"] = pd.to_datetime(df["data"], errors="coerce")
# Exibindo as primeiras linhas do DataFrame resultante
df.head()
2 parte
import pandas as pd
# URLs das bases
url_clientes = "https://raw.githubusercontent.com/alura-cursos/ia-datascience-dataviz/main/dados/zoop_clientes.csv"
url_vendas = "https://raw.githubusercontent.com/alura-cursos/ia-datascience-dataviz/main/dados/zoop_vendas.csv"
url_zoop_pay = "https://raw.githubusercontent.com/alura-cursos/ia-datascience-dataviz/main/dados/cadastro_zoop_pay.csv"
# Leitura das bases
df_clientes = pd.read_csv(url_clientes)
df_vendas = pd.read_csv(url_vendas)
df_pay = pd.read_csv(url_zoop_pay)
# Merge inicial: df_vendas + df_clientes → df
df = pd.merge(df_vendas, df_clientes, on='ID_compra', how='inner')
# Ajuste da ordem das colunas, se necessário
colunas_ordenadas = [
"ID_compra", "data", "horario", "categoria", "preco_unitario",
"quantidade", "frete", "metodo_pagamento", "ID_cliente", "idade",
"sexo_biologico", "cidade", "uf", "regiao", "cashback", "avaliacao_compra"
]
df = df[colunas_ordenadas]
# Conversão da coluna 'data' para datetime no formato correto
df['data'] = pd.to_datetime(df['data'], format='%Y-%m-%d', errors='coerce')
# Merge final: df + df_pay usando 'ID_cliente'
df = pd.merge(df, df_pay, on='ID_cliente', how='left') # ou 'inner' se quiser só clientes que têm cadastro no Zoop Pay
# Visualizando o resultado
df.head()