Views
No views yet
[Données brutes] [Entrepôt DuckDB] [Modèles] [Dashboard]
CSV --> Schéma en étoile --> Prophet/XGBoost --> Power BI
(ventes, (fact_ventes, (prévisions) (KPIs, alertes)
stocks, dim_produit,
promos) dim_temps...)1# Créer l'environnement
2python -m venv .venv
3source .venv/bin/activate # Windows: .venv\Scripts\activate
4
5# Installer les dépendances
6pip install -r requirements.txt.duckdb unique. Pas besoin de partition séparée.1# 1. Générer les données de test (2 ans d'historique)
2python src/01_generate_data.py
3
4# 2. Construire l'entrepôt (modèle en étoile)
5python src/02_build_warehouse.py
6
7# 3. Créer les features et entraîner les modèles
8python src/03_train_models.py
9
10# 4. Calculer les KPIs et recommandations
11python src/04_compute_kpis.py
12
13# 5. Exporter pour Power BI
14python src/05_export_powerbi.pydim_produit (sk_produit, code_ref, libelle, categorie, fournisseur, delai_appro)
dim_entrepot (sk_entrepot, code_depot, ville, capacite_palettes)
dim_temps (sk_temps, date_jour, semaine, mois, trimestre, annee, jour_semaine, est_ferie)
fact_ventes (sk_produit, sk_entrepot, sk_temps, qte_vendue, ca_ht, flag_promo)
fact_stock (sk_produit, sk_entrepot, sk_temps, qte_stock, valeur_stock)
fact_previsions (sk_produit, sk_entrepot, sk_temps, qte_prevue, intervalle_bas, intervalle_haut)| KPI | Formule | Cible |
|---|---|---|
| Taux rupture | jours_rupture / jours_ouvrés | < 5% |
| Couverture | stock_moyen / ventes_moy_jour | 15-45j |
| Rotation | CA / stock_moyen | > 8/an |
| MAPE prévision | mean(abs(prev-reel)/reel) | < 20% |
| Valeur surstockée | stock au-delà de 60j couverture | minimiser |
05_export_powerbi.py génère :data/powerbi/fact_*.parquet : tables de faitsdata/powerbi/dim_*.parquet : dimensionsdata/powerbi/kpis_*.csv : KPIs agrégés04_compute_kpis.py génère une table alertes avec :