Os 6 scripts Python + 1 pipeline de áudio que produzem tudo do site.
Cada bloco abaixo tem o diagrama Excalidraw interativo (zoom com scroll, arrastar com mouse — clique em "abrir no painel" pra ampliar), o código fonte completo com syntax highlight, e a lista de outputs gerados.
01_eda.py — Análise exploratória e diagnóstico inicial
Carrega o Excel original, agrega em série mensal, calcula CAGR 2018-2025, extrai sazonalidade via STL, faz heatmap cidade × setor e mede volatilidade (CV). É a base para tudo que vem depois.
Diagrama do raciocínio
Passos da análise
dateresumo_eda.json, indice_sazonal.csv, setor_summary.csv, cidade_summary.csv, cv_por_corte.csv — todos consumidos pelos scripts seguintes ou pelo site.Código completo
carregando…
Outputs gerados
outputs/monthly_total.csvsérie mensal agregada · 96 linhasoutputs/annual_total.csvtotais anuais + crescimentooutputs/indice_sazonal.csvíndice base 100 por mêsoutputs/setor_summary.csvvol/share/CAGR por setor (30 setores)outputs/cidade_summary.csvvol/share/CAGR por cidadeoutputs/cv_por_corte.csvcoef. de variação cidade × setoroutputs/resumo_eda.jsonresumo executivo (consumido pelo site)charts/01_stl_decomposition.pngdecomposição STL (4 painéis)
02_forecast.py — Projeção 2026 e backtest dos modelos
Treina 4 modelos (Holt-Winters multiplicativo, SARIMA, ETS aditivo, Naive sazonal) num hold-out 2025 para reportar MAPE/RMSE. Refita SARIMA na base completa para projetar 2026 com IC 80% e 95%.
Diagrama do raciocínio
Passos da análise
Código completo
carregando…
Outputs gerados
outputs/holdout_comparison.csvMAPE/RMSE/MAE de cada modelo em 2025outputs/projecao_2026.csv12 meses · base/cons/otim + IC 80/95outputs/projecao_2026_resumo.jsontotais + crescimento implícito (consumido pelo P3)charts/06_projecao_2026.pnghistórico + projeção + bandas ICcharts/07_holdout_comparison.png4 modelos vs realizado 2025
03_error_analysis.py — Diagnóstico de incerteza bottom-up
Treina 240 modelos individuais (cidade × setor) e calcula MAPE no hold-out 2025 para cada corte. Combina com CV histórico e força sazonal STL para diagnosticar por que cada corte erra.
Diagrama do raciocínio
Passos da análise
Código completo
carregando…
Outputs gerados
outputs/erro_por_corte.csv240 linhas: vol/MAPE/CV/força sazonaloutputs/erro_por_setor.csvMAPE simples e ponderado por setoroutputs/erro_por_cidade.csvMAPE por cidadeoutputs/diagnostico_p2.jsonresumo P2 (consumido pelo site)charts/08_erro_vs_volume.pngscatter MAPE × volume · cor = CVcharts/09_heatmap_mape.pngheatmap MAPE cidade × setor
04_market_share.py — Meta de 20% e distribuição mensal
Aplica share alvo (20%) sobre 5 cenários de mercado 2026. Distribui a meta anual em 12 meses usando o índice sazonal histórico — para expor o pico jul-ago.
Diagrama do raciocínio
Passos da análise
Código completo
carregando…
Outputs gerados
outputs/meta_market_share.csvmeta anual + mensal média por cenáriooutputs/meta_mensal.csvdistribuição mês a mês usando sazonalidadeoutputs/sensibilidade_meta.csvmatriz 5×5 cenário × share alvooutputs/resumo_p3.jsonresumo P3 (consumido pelo site)
05_priority_matrix.py — Matriz volume × CAGR e cluster Saúde
Plota os 30 setores na matriz volume × CAGR (escala log no X). Cortes nas medianas dividem em 4 quadrantes (ATACAR / APOSTAR / MANTER / DEPRIORIZAR).
Diagrama do raciocínio
Passos da análise
Código completo
carregando…
Outputs gerados
outputs/quadrantes.jsonclassificação dos setores em 4 quadrantescharts/12_matriz_oportunidade.pngscatter vol × CAGR com 4 quadrantescharts/13_cluster_saude.png7 sub-setores de Saúdecharts/14_cidades.pngranking de cidades · cor = CAGR
06_build_data.py — Consolidação em data.json para o site
Reroda toda a pipeline e empacota tudo num único JSON ~35KB que alimenta o site interativo.
Diagrama do raciocínio
Passos da análise
meta, agregado, sazonal, holdout, forecast_2026, setores, cidades, erro_corte. Inspecionável em window.DATA no console.Código completo
carregando…
Output gerado
site/data.json~35KB · consumido peloindex.htmlvia fetch()
omnivoice — voz clonada para a persona Claudio
Voz do Leonardo Drummond (Mind The Headphone) clonada via OmniVoice + animação Manim com persona Claudio. Resultado é o aula.mp4 de ~2:43.
Diagrama do raciocínio
Etapas do pipeline
Stack de produção: OmniVoice (clone de voz) → script narrado em pt-BR → Manim Community Edition (animação) → ffmpeg (composição) → MP4 H.264 1080p.