Oi, Bárbara! Como vai?
Agradeço por compartilhar seu código com a comunidade Alura.
Achei bem bacana como você usou pd.json_normalize() para “abrir” o JSON e depois aplicou explode() com reset_index() para organizar as linhas. Também foi um cuidado importante transformar Valor da compra limpando R$ e ajustando a vírgula antes do astype(np.float64), porque isso deixa a coluna pronta para cálculos e análises.
Uma dica interessante para o futuro é usar o método pd.to_numeric() com errors='coerce', que ajuda a lidar com valores inesperados (por exemplo, campo vazio) sem quebrar o fluxo. Veja este exemplo:
import pandas as pd
dados['Valor da compra'] = (
dados['Valor da compra']
.str.replace('R$ ', '', regex=False)
.str.replace(',', '.', regex=False)
.str.strip()
)
dados['Valor da compra'] = pd.to_numeric(dados['Valor da compra'], errors='coerce')
Esse código limpa o texto da coluna e converte para número, trocando valores inválidos por NaN.
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!