Este projeto simula a atuação de um analista de dados na empresa InsightFlow, com o objetivo de transformar dados brutos de um e-commerce em insights estratégicos para tomada de decisão.
O trabalho cobre todo o ciclo de análise de dados, desde a geração e tratamento dos dados até a construção de um dashboard interativo e um modelo preditivo.
A análise foi guiada pelas seguintes perguntas:
- Qual é o perfil de consumo dos clientes?
- Quais categorias e produtos têm maior desempenho?
- Onde estão os principais padrões e anomalias?
- É possível prever o volume de vendas do próximo mês?
O projeto foi estruturado em 4 sprints, seguindo um fluxo real de Data Analytics:
Preparar os dados para análise.
-
Geração de dataset com +5000 registros
-
Inserção de inconsistências simulando dados reais
-
Tratamento de:
- valores nulos
- duplicatas
- formatos de moeda
-
Padronização de datas
-
Criação de variáveis:
Valor_BrutoValor_DescontoValor_Total
-
Carga no banco SQLite
data/ecom_data.csvdata/ecommerce.db
Explorar os dados e extrair insights.
- média, mediana, desvio padrão
- distribuição de vendas
- faturamento total
- ticket médio
- número de pedidos
- clientes únicos
Consultas utilizando:
GROUP BYSUMAVG- ordenação e ranking
- detecção via método IQR
- Recência
- Frequência
- Monetário
outputs/kpis.txtoutputs/segmentacao_rfm.csvoutputs/outliers_detectados.csv
Transformar dados em informação visual.
- vendas ao longo do tempo
- faturamento por categoria
- top clientes
- top produtos
- boxplot de outliers
Foi desenvolvido com Streamlit, contendo:
- Categoria
- Estado
- Canal de venda
- Método de pagamento
- Período
- Faturamento total
- Ticket médio
- Total de pedidos
- Clientes únicos
- Itens vendidos
- Visão geral
- Clientes e RFM
- Previsão de vendas
- Dados
- gráficos
.pngemoutputs/ dashboard.py
Prever vendas futuras e gerar recomendações.
- Regressão linear
- Previsão para os próximos 30 dias
- Interpretação dos resultados
- Construção de narrativa analítica
outputs/previsao_proximo_mes.csvoutputs/grafico_previsao_vendas.pngoutputs/storytelling.txt
git clone https://github.com/Freduart12/InsightFlow---Data-Analytics-Project.git cd InsightFlow---Data-Analytics-Project
Opção recomendada
Se o arquivo requirements.txt já estiver no projeto:
pip install -r requirements.txt Dependências esperadas
pandas numpy matplotlib scikit-learn faker jupyter streamlit plotly
src/insightflow_pipeline.py dashboard.py requirements.txt
As pastas data/ e outputs/ podem ser criadas automaticamente pelo pipeline.
Esse é o passo que gera o dataset, trata os dados, cria o banco, produz os gráficos, faz a previsão e exporta os resultados.
No terminal:
python src/insightflow_pipeline.py O que esse comando faz
- gera o dataset com mais de 5.000 linhas
- trata valores nulos, duplicatas e inconsistências
- salva o CSV final
- carrega os dados em SQLite
- calcula KPIs
- executa análises e consultas SQL
- detecta outliers
- faz segmentação RFM
- gera gráficos
- cria previsão para os próximos 30 dias
- exporta arquivos finais em outputs/
Depois de rodar o pipeline, você deverá ter:
- Na pasta data/
- ecom_data.csv
- ecommerce.db
- Na pasta outputs/
- kpis.txt
- previsao_proximo_mes.csv
- grafico_vendas_tempo.png
- grafico_categoria.png
- grafico_top_clientes.png
- boxplot_outliers.png
- dashboard_resumo.png
- grafico_previsao_vendas.png
- segmentacao_rfm.csv
- outliers_detectados.csv
- storytelling.txt
Depois de rodar o pipeline, inicie o dashboard com:
streamlit run dashboard.py
O Streamlit abrirá o painel no navegador. Se não abrir sozinho, copie o endereço exibido no terminal, geralmente:
O dashboard interativo contém:
- Filtros
- categoria
- estado
- canal de venda
- método de pagamento
- período
- KPIs
- faturamento total
- ticket médio
- total de pedidos
- clientes únicos
- itens vendidos
- Abas
- Visão Geral
- Clientes e RFM
- Previsão
- Dados
- Gráficos
- vendas ao longo do tempo
- faturamento por categoria
- top clientes
- top produtos
- boxplot de outliers
- gráfico de previsão
pip install -r requirements.txtpython src/insightflow_pipeline.pyIsso irá gerar:
- dataset limpo
- banco de dados
- arquivos de saída
- previsão
- RFM
- gráficos
streamlit run dashboard.pyhttp://localhost:8501
O dashboard depende dos arquivos gerados pelo pipeline:
data/ecom_data.csvoutputs/previsao_proximo_mes.csvoutputs/segmentacao_rfm.csvoutputs/outliers_detectados.csv
Se não rodar o pipeline antes, o dashboard ficará incompleto.
- Python
- Pandas
- NumPy
- Matplotlib
- SQLite
- Scikit-learn
- Streamlit
- Plotly
- Faker
src/insightflow_pipeline.py
Script principal responsável por executar o pipeline completo.
dashboard.py
Aplicação Streamlit para visualização interativa dos resultados.
data/ecom_data.csv
Dataset final tratado.
data/ecommerce.db
Banco de dados SQLite com a tabela de vendas.
outputs/
Pasta com gráficos, previsões, segmentação e resultados exportados.
insightflow/
│
├── src/
│ └── insightflow_pipeline.py
├── data/
│ ├── ecom_data.csv
│ └── ecommerce.db
├── outputs/
│ ├── kpis.txt
│ ├── previsao_proximo_mes.csv
│ ├── grafico_vendas_tempo.png
│ ├── grafico_categoria.png
│ ├── grafico_top_clientes.png
│ ├── boxplot_outliers.png
│ ├── dashboard_resumo.png
│ ├── grafico_previsao_vendas.png
│ ├── segmentacao_rfm.csv
│ ├── outliers_detectados.csv
│ └── storytelling.txt
├── dashboard.py
├── requirements.txt
└── README.mdAo final, o projeto entrega:
- um pipeline completo de Data Analytics
- um dataset estruturado
- análise exploratória e SQL
- segmentação de clientes
- gráficos e dashboard interativo
- previsão de vendas
- documentação completa
- O faturamento apresenta tendência consistente ao longo do tempo
- Algumas categorias concentram maior volume de vendas
- Existe concentração de receita em poucos clientes
- Foram identificados comportamentos atípicos (outliers)
- A segmentação RFM permite identificar clientes estratégicos
- O modelo preditivo indica tendência futura das vendas
Este projeto demonstra a aplicação completa de um pipeline de Data Analytics em um cenário de e-commerce, integrando:
- engenharia de dados (ETL)
- análise exploratória
- SQL
- visualização
- machine learning
- storytelling
Frederico Matheus Costa Duarte