import numpy as np
import pandas as pd
from pandas_profiling import ProfileReport as pr
import plotly.express as px
import matplotlib.pyplot as plt
dados = pd.read_csv('merged/olist_dataset_train.csv')
dados.head()
#Convertendo os campos de data para o formata data
dados["order_purchase_timestamp"] = pd.to_datetime(dados["order_purchase_timestamp"])
dados["order_approved_at"] = pd.to_datetime(dados["order_approved_at"])
dados["order_delivered_carrier_date"] = pd.to_datetime(dados["order_delivered_carrier_date"])
dados["order_delivered_customer_date"] = pd.to_datetime(dados["order_delivered_customer_date"])
dados["order_estimated_delivery_date"] = pd.to_datetime(dados["order_estimated_delivery_date"])
dados["review_creation_date"] = pd.to_datetime(dados["review_creation_date"])
dados["review_answer_timestamp"] = pd.to_datetime(dados["review_answer_timestamp"])
#CRIANDO UMA COLUNA JUNTANDO MES_ANO
dados['mes_pedido'] = dados['order_purchase_timestamp'].dt.strftime('%Y-%m')
dados.head()
dados["entrega_prazo"] = dados["order_delivered_customer_date"] - dados["order_estimated_delivery_date"]
dados["entrega_prazo_dias"] = dados["entrega_prazo"].astype("timedelta64[D]") # convertendo em inteiro
# exemplo = 10 - 27 #negativo - entrega no prazo
fig = px.histogram(dados, x="entrega_prazo_dias")
fig.update_layout(title='Distribuição das entregas', xaxis_title='Dif da entrega para a estimativa', yaxis_title='Numero de Entregas')
fig.show()
# dados.boxplot(column='payment_value')
df_boxplot = dados[["payment_value"]]
px.box(df_boxplot)