Administration

← Retour

Log : 20260317_140000

=== CRAWL 20260317_140000 ===
Trigger: scheduled
Started: 2026-03-17T14:00:00.000315
============================================================

Récupération de la page 1/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=1
  → 35 annonces récupérées (total en mémoire: 35)
Export de 35 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 2/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=2
  → 35 annonces récupérées (total en mémoire: 70)
Export de 70 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 3/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=3
  → 35 annonces récupérées (total en mémoire: 105)
Export de 105 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 4/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=4
  → 35 annonces récupérées (total en mémoire: 140)
Export de 140 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 5/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=5
  → 35 annonces récupérées (total en mémoire: 175)
Export de 175 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 6/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=6
  → 35 annonces récupérées (total en mémoire: 210)
Export de 210 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 7/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=7
  → 35 annonces récupérées (total en mémoire: 245)
Export de 245 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 8/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=8
  → 35 annonces récupérées (total en mémoire: 280)
Export de 280 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 9/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=9
  → 35 annonces récupérées (total en mémoire: 315)
Export de 315 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 10/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=10
  → 35 annonces récupérées (total en mémoire: 350)
Export de 350 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 11/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=11
  → 35 annonces récupérées (total en mémoire: 385)
Export de 385 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 12/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=12
  → 35 annonces récupérées (total en mémoire: 420)
Export de 420 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 13/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=13
  → 35 annonces récupérées (total en mémoire: 455)
Export de 455 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 14/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=14
  → 35 annonces récupérées (total en mémoire: 490)
Export de 490 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 15/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=15
  → 35 annonces récupérées (total en mémoire: 525)
Export de 525 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 16/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=16
  → 35 annonces récupérées (total en mémoire: 560)
Export de 560 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 17/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=17
  → 35 annonces récupérées (total en mémoire: 595)
Export de 595 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 18/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=18
  → 35 annonces récupérées (total en mémoire: 630)
Export de 630 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 19/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=19
  → 35 annonces récupérées (total en mémoire: 665)
Export de 665 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 20/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=20
  → 35 annonces récupérées (total en mémoire: 700)
Export de 700 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 21/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=21
  → 35 annonces récupérées (total en mémoire: 735)
Export de 735 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 22/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=22
  → 35 annonces récupérées (total en mémoire: 770)
Export de 770 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 23/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=23
  → 35 annonces récupérées (total en mémoire: 805)
Export de 805 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 24/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=24
  → 35 annonces récupérées (total en mémoire: 840)
Export de 840 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 25/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=25
  → 35 annonces récupérées (total en mémoire: 875)
Export de 875 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 26/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=26
  → 35 annonces récupérées (total en mémoire: 910)
Export de 910 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 27/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=27
  → 35 annonces récupérées (total en mémoire: 945)
Export de 945 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 28/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=28
  → 35 annonces récupérées (total en mémoire: 980)
Export de 980 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 29/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=29
  → 35 annonces récupérées (total en mémoire: 1015)
Export de 1015 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 30/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=30
  → 35 annonces récupérées (total en mémoire: 1050)
Export de 1050 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 31/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=31
  → 35 annonces récupérées (total en mémoire: 1085)
Export de 1085 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 32/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=32
  → 35 annonces récupérées (total en mémoire: 1120)
Export de 1120 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 33/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=33
  → 35 annonces récupérées (total en mémoire: 1155)
Export de 1155 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 34/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=34
  → 35 annonces récupérées (total en mémoire: 1190)
Export de 1190 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 35/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=35
  → 35 annonces récupérées (total en mémoire: 1225)
Export de 1225 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 36/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=36
  → 35 annonces récupérées (total en mémoire: 1260)
Export de 1260 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 37/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=37
  → 35 annonces récupérées (total en mémoire: 1295)
Export de 1295 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 38/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=38
  → 35 annonces récupérées (total en mémoire: 1330)
Export de 1330 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 39/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=39
  → 35 annonces récupérées (total en mémoire: 1365)
Export de 1365 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 40/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=40
  → 35 annonces récupérées (total en mémoire: 1400)
Export de 1400 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.
Récupération de la page 41/41 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=clio+4&price=3000-9000&regdate=2016-max&u_car_brand=RENAULT&u_car_model=RENAULT_Clio&gearbox=1&seats=5%2C4&order=asc&page=41
  → 35 annonces récupérées (total en mémoire: 1435)
Export de 1435 annonces vers /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv réussi.

Terminé : 1435 annonces au total dans /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv
INFO: Model override : clio_4
INFO: Schéma initialisé dans /home/ubuntu/app/db/lbc.sqlite
════════════════════════════════════════════════════════════
  📦 MIGRATION CSV → SQLite unifié
════════════════════════════════════════════════════════════

📂 leboncoin_ads_clio_4_20260317_140000.csv
   ✅ 1435 lus, 1435 insérés, 0 ignorés, 0 erreurs

────────────────────────────────────────────────────────────
  📊 TOTAL : 1435 lus, 1435 insérés
  💾 Base : /home/ubuntu/app/db/lbc.sqlite
  📌 5679 annonces en base
════════════════════════════════════════════════════════════
INFO: 1425 list_id lus dans le CSV.
INFO: 1461 annonces actives en base pour renault clio_4.
INFO: 36 annonce(s) marquées indisponibles.
════════════════════════════════════════════════════════════
  CHECK DISPONIBILITÉ
  CSV   : leboncoin_ads_clio_4_20260317_140000.csv
  Brand : renault  |  Modèle : clio_4
════════════════════════════════════════════════════════════

  Annonces dans le CSV    : 1425
  Annonces actives en DB  : 1461
  Absentes du crawl       : 36
  Marquées indisponibles  : 36
════════════════════════════════════════════════════════════

  Vérification :
  SELECT list_id, available, unavailable_detected_at FROM ads WHERE available = 0;
══════════════════════════════════════════════════════════════════════
  🚗 ANALYSEUR LEBONCOIN - Analyses Descriptives Véhicules
══════════════════════════════════════════════════════════════════════
  💾 Base SQLite       : /home/ubuntu/app/db/lbc.sqlite
  📁 Dossier figures  : /home/ubuntu/app/stats/clio_4/figures
  🔍 Modèle filtré    : clio_4
  📊 Graphiques       : Non
══════════════════════════════════════════════════════════════════════
📂 Chargement depuis SQLite : /home/ubuntu/app/db/lbc.sqlite
   ✅ 2240 annonces chargées (modèle 'clio_4')

======================================================================
📊 EXPLORATION DES DONNÉES BRUTES
======================================================================

📌 Nombre total d'annonces : 2240

📋 Premières lignes (colonnes parsées) :
      list_id                                                                          subject  price_eur  year_model  mileage_km     fuel    brand   model owner_type first_publication_date
0  3127969515                                                                   Renault clio 4       7000        2018       82900  essence  renault  clio_4        pro    2026-01-15 08:48:18
1  3118025641                               Renault clio 4 1.5 dci 2019 entretenu chez renault       7990        2019      113000   diesel  renault  clio_4    private    2025-12-27 01:30:58
2  3143719888             Renault clio 4 phase 2 0.9 tce 90cv energy limited entretien complet       7990        2018       95000  essence  renault  clio_4        pro    2026-02-12 11:14:08
3  3141083795  Renault Clio 4/IV Authentique / 1.2 16 V 75 ch / 88280 kms / Entretiens à jours       5990        2014       88280  essence  renault  clio_4        pro    2026-02-07 16:41:23
4  3147329929                                                                           Clio 4       4000        2014      100000  essence  renault  clio_4    private    2026-02-18 19:23:14

❓ Valeurs manquantes par colonne clé :
   list_id                        :    0 manquantes (0.0%)
   subject                        :    0 manquantes (0.0%)
   price_eur                      :    0 manquantes (0.0%)
   year_model                     :    0 manquantes (0.0%)
   mileage_km                     :    0 manquantes (0.0%)
   fuel                           :    0 manquantes (0.0%)
   brand                          :    0 manquantes (0.0%)
   model                          :    0 manquantes (0.0%)
   owner_type                     :    0 manquantes (0.0%)
   first_publication_date         :    0 manquantes (0.0%)

📅 Période couverte :
   Première publication : 2024-04-05 09:38:00
   Dernière publication : 2026-03-17 14:43:35
   Durée : 711 jours

👤 Répartition par type de vendeur :
   private         : 1417 (63.3%)
   pro             :  823 (36.7%)

⛽ Répartition par carburant :
   diesel               : 1222 (54.6%)
   essence              : 1014 (45.3%)
   autre                :    3 (0.1%)
   gpl                  :    1 (0.0%)

🏭 Top 10 marques :
   renault              : 2240 (100.0%)

🧮 Création des colonnes calculées...
   ✅ Colonnes ajoutées : age_years, km_per_year, price_per_km

🧹 Nettoyage des données...

   📊 Rapport de nettoyage :
      prix_aberrants            :    0 lignes supprimées
      km_aberrants              :    1 lignes supprimées
      annee_aberrante           :    0 lignes supprimées
      age_negatif               :    0 lignes supprimées
      ─────────────────────────────────────────────
      Total supprimé          :    1
      Restantes               : 2239 / 2240
      Pourcentage conservé    : 100.0%

🔍 Détection des outliers (méthode IQR)...
   price_eur            :   28 outliers (1.3%)
      Bornes IQR : [4,740 ; 10,740]
   mileage_km           :   30 outliers (1.3%)
      Bornes IQR : [20,000 ; 252,000]
   age_years            :    7 outliers (0.3%)
      Bornes IQR : [5 ; 13]

   📌 Total d'annonces outliers (au moins 1 variable) : 55 (2.5%)
   ⚠️  Les outliers sont identifiés mais NON supprimés.

======================================================================
📊 RÉSUMÉ APRÈS NETTOYAGE
======================================================================
   Nombre d'annonces restantes : 2239
   Dont outliers identifiés    : 55
   Annonces non-outliers       : 2184

   Plages de valeurs :
      price_eur            : [     3,300 ;      9,000]  (moy:      7,630)
      mileage_km           : [       125 ;    380,000]  (moy:    137,567)
      year_model           : [     2,014 ;      2,024]  (moy:      2,017)
      age_years            : [         2 ;         12]  (moy:          9)
      km_per_year          : [        18 ;     54,286]  (moy:     16,073)

   💾 2239 annonces enrichies persistées dans SQLite

🔎 Détection des annonces suspectes...
   ⚠️  6 signaux de suspicion détectés
      km_trop_bas_essence: 2
      km_trop_bas_diesel: 4
   💾 6 signaux persistés dans SQLite

======================================================================
📊 STATISTIQUES DESCRIPTIVES GLOBALES
======================================================================

📊 Tableau récapitulatif (valeurs brutes) :
   Variable  Count          Mean   Median          Std         Min          Q1            Q3           Max          IQR
  price_eur   2239   7630.106744   7900.0  1085.395616 3300.000000   6990.0000   8490.000000   9000.000000  1500.000000
 mileage_km   2239 137566.808397 134000.0 43888.772530  125.000000 107000.0000 165000.000000 380000.000000 58000.000000
 year_model   2239   2017.251005   2017.0     1.371375 2014.000000   2016.0000   2018.000000   2024.000000     2.000000
  age_years   2239      8.748995      9.0     1.371375    2.000000      8.0000     10.000000     12.000000     2.000000
km_per_year   2239  16072.716454  15625.0  5647.496780   17.857143  12197.8125  19555.555556  54285.714286  7357.743056

📊 Tableau formaté :
   Variable Count     Mean   Median       Std   Min       Q1       Q3      Max     IQR
  price_eur 2,239    7,630    7,900  1,085.40 3,300    6,990    8,490    9,000   1,500
 mileage_km 2,239  137,567  134,000 43,888.77   125  107,000  165,000  380,000  58,000
 year_model 2,239    2,017    2,017      1.37 2,014    2,016    2,018    2,024       2
  age_years 2,239      8.7      9.0      1.37   2.0      8.0     10.0     12.0     2.0
km_per_year 2,239 16,072.7 15,625.0  5,647.50  17.9 12,197.8 19,555.6 54,285.7 7,357.7

📝 INTERPRÉTATION DES STATISTIQUES :
--------------------------------------------------

   📌 price_eur :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 14%, σ = 1,085)
      → Étendue : [3,300 ; 9,000] (IQR = 1,500)

   📌 mileage_km :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Dispersion MODÉRÉE (CV = 32%, σ = 43,889)
      → Étendue : [125 ; 380,000] (IQR = 58,000)

   📌 year_model :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 0%, σ = 1)
      → Étendue : [2,014 ; 2,024] (IQR = 2)

   📌 age_years :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 16%, σ = 1)
      → Étendue : [2 ; 12] (IQR = 2)

   📌 km_per_year :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Dispersion MODÉRÉE (CV = 35%, σ = 5,647)
      → Étendue : [18 ; 54,286] (IQR = 7,358)

======================================================================
📊 DISTRIBUTIONS PAR CATÉGORIES
======================================================================

📊 Prix moyen par année modèle...

   📋 Table : Prix par année modèle
   ---------------------------------------------------------------------------
    Année    Nb   Prix moy   Prix méd   Décote %
   ---------------------------------------------------------------------------
     2014    53      6,972      7,200        N/A
     2015    55      7,319      7,600      -5.0%
     2016   635      7,320      7,500      -0.0%
     2017   606      7,648      7,800      -4.5%
     2018   465      7,735      7,990      -1.1%
     2019   311      7,962      8,000      -2.9%
     2020    86      8,328      8,645      -4.6%
     2021    21      8,530      8,500      -2.4%
     2022     6      8,838      8,930      -3.6%

   📌 Décote annuelle moyenne : -3.0%

📊 Prix moyen par tranche de kilométrage...

   📋 Table : Prix par tranche de km
   ----------------------------------------------------------------------
        Tranche    Nb   Prix moy   Prix méd      Var %
   ----------------------------------------------------------------------
          0-20k     7      7,834      8,500        N/A
         20-50k    12      8,019      8,600      +2.4%
         50-80k   132      8,191      8,490      +2.1%
        80-120k   710      7,987      8,000      -2.5%
       120-160k   722      7,906      7,990      -1.0%
       160-200k   460      7,187      7,000      -9.1%
          200k+   196      5,954      5,870     -17.2%

📊 Prix moyen par âge...

   📋 Table : Prix par âge
   -----------------------------------------------------------------
     Âge    Nb   Prix moy   Décote %
   -----------------------------------------------------------------
       4     6      8,838        N/A
       5    21      8,530      -3.5%
       6    86      8,328      -2.4%
       7   311      7,962      -4.4%
       8   465      7,735      -2.9%
       9   606      7,648      -1.1%
      10   635      7,320      -4.3%
      11    55      7,319      -0.0%
      12    53      6,972      -4.7%

📊 Prix par type de carburant...

   📋 Table : Prix par carburant
   ----------------------------------------------------------------------
         Carburant    Nb   Prix moy   Prix méd
   ----------------------------------------------------------------------
             autre     3      7,630      6,990
            diesel  1222      7,499      7,790
           essence  1013      7,787      7,990

   📌 Carburant avec prix médian le plus élevé : essence (7,990€)
   📌 Carburant avec prix médian le plus bas : autre (6,990€)

📊 Prix par type de vendeur...

   📋 Table : Prix par type de vendeur
   ------------------------------------------------------------
         Type    Nb   Prix moy   Prix méd
   ------------------------------------------------------------
      private  1416      7,464      7,600
          pro   823      7,916      7,990

   📌 Test Mann-Whitney (médiane) : p = 0.0000
   ✅ Différence SIGNIFICATIVE (p < 0.05)
   📌 Écart médian Pro - Particulier : +390€

📊 Prix par modèle de véhicule...
   ℹ️ Un seul modèle détecté (clio_4) — comparaison non applicable

   ✅ Toutes les distributions par catégorie sauvegardées dans /home/ubuntu/app/stats/clio_4/figures

======================================================================
📊 ANALYSES AVANCÉES - SEUILS PSYCHOLOGIQUES
======================================================================

📊 Analyse des seuils de kilométrage...

   📋 Taux de décote par tranche de 10k km :
   --------------------------------------------------
        20k : décote  -15.0% (n=  3)
        30k : décote    4.4% (n=  5)
        40k : décote   17.0% (n=  4) ⚡
        50k : décote  -15.7% (n= 25)
        60k : décote   -3.8% (n= 42)
        70k : décote    3.1% (n= 65)
        80k : décote   -0.9% (n=113)
        90k : décote    1.4% (n=168)
       100k : décote    2.2% (n=180)
       110k : décote   -0.1% (n=249)
       120k : décote   -1.7% (n=171)
       130k : décote    1.3% (n=188)
       140k : décote   -0.5% (n=186)
       150k : décote    3.5% (n=177)
       160k : décote    3.1% (n=152)
       170k : décote    1.6% (n=125)
       180k : décote    4.4% (n= 93)
       190k : décote    3.9% (n= 90)
       200k : décote    5.2% (n= 73)
       210k : décote    5.8% (n= 44)
       220k : décote   -2.9% (n= 19)
       230k : décote    9.1% (n= 24)
       240k : décote    5.3% (n=  8)
       250k : décote    2.5% (n= 11)
       260k : décote   -1.1% (n=  2)
       270k : décote   21.4% (n=  3) ⚡
       280k : décote  -52.6% (n=  3)
       290k : décote   30.4% (n=  6) ⚡
      300k+ : décote  -27.8% (n=  3)

   📌 Seuils où la décote s'accélère (> 8%) :
      → 40k km : 17.0%
      → 230k km : 9.1%
      → 270k km : 21.4%
      → 290k km : 30.4%
   ✅ Sauvegardé : /home/ubuntu/app/stats/clio_4/figures/seuils_km.png

📊 Analyse des seuils d'âge...

   📋 Taux de décote par année d'âge :
   ---------------------------------------------
     5 ans : décote    3.5% (n= 21)
     6 ans : décote    2.4% (n= 86) 🐢 LENTE
     7 ans : décote    4.4% (n=311)
     8 ans : décote    2.9% (n=465) 🐢 LENTE
     9 ans : décote    1.1% (n=606) 🐢 LENTE
    10 ans : décote    4.3% (n=635)
    11 ans : décote    0.0% (n= 55) 🐢 LENTE
    12 ans : décote    4.7% (n= 53)

   📌 Décote lente (< 5% par an) :
      → 5 ans : 3.5%
      → 6 ans : 2.4%
      → 7 ans : 4.4%
      → 8 ans : 2.9%
      → 9 ans : 1.1%
      → 10 ans : 4.3%
      → 11 ans : 0.0%
      → 12 ans : 4.7%
   ✅ Sauvegardé : /home/ubuntu/app/stats/clio_4/figures/seuils_age.png

======================================================================
📊 IDENTIFICATION DES BONNES AFFAIRES
======================================================================

📊 Construction du modèle de prix attendu...
   📌 Modèle : prix = -182.69 × âge + -0.0126 × km + 10,961
   📌 R² = 0.328
📊 Calcul des écarts de prix...

   📋 Classification des annonces :
      🌟 Excellente affaire        :  134 (  6.0%)
      👍 Bonne affaire             :  281 ( 12.6%)
      📊 Prix marché               : 1399 ( 62.5%)
      💰 Cher                      :  359 ( 16.0%)
      🔴 Très cher                 :   66 (  2.9%)
📊 Graphique : Distribution des écarts de prix...
   ✅ Sauvegardé : /home/ubuntu/app/stats/clio_4/figures/ecarts_prix.png

   🌟 TOP 10 MEILLEURES AFFAIRES (écart le plus négatif) :
   ====================================================================================================
    1. [3139618502] Renault Clio 4 estate accidenté
       Prix:    3,300€ | Attendu:    7,848€ | Écart:  -57.9% | Année: 2018 | Km: 131,159
    2. [3147790884] Clio 4 phase 2
       Prix:    3,500€ | Attendu:    7,862€ | Écart:  -55.5% | Année: 2018 | Km: 130,000
    3. [3150016687] Clio 4
       Prix:    4,000€ | Attendu:    7,774€ | Écart:  -48.5% | Année: 2016 | Km: 108,000
    4. [3162715888] Clio 4 2018
       Prix:    4,700€ | Attendu:    8,996€ | Écart:  -47.8% | Année: 2018 | Km: 40,000
    5. [3154311236] Renault Clio 4 1.5 dCi 2016 – Diesel – Société – 1
       Prix:    3,800€ | Attendu:    7,207€ | Écart:  -47.3% | Année: 2016 | Km: 153,000
    6. [3147329929] Clio 4
       Prix:    4,000€ | Attendu:    7,509€ | Écart:  -46.7% | Année: 2014 | Km: 100,000
    7. [3144664626] Clio 4 retour de vol
       Prix:    4,800€ | Attendu:    8,990€ | Écart:  -46.6% | Année: 2019 | Km: 55,000
    8. [3161045630] Clio 4 75ch
       Prix:    4,000€ | Attendu:    7,006€ | Écart:  -42.9% | Année: 2016 | Km: 169,000
    9. [3138542846] Clio 4 essence retour vol
       Prix:    4,500€ | Attendu:    7,692€ | Écart:  -41.5% | Année: 2015 | Km: 100,000
   10. [3144128404] Clio 4
       Prix:    4,980€ | Attendu:    8,423€ | Écart:  -40.9% | Année: 2019 | Km: 100,000

   🔴 TOP 10 ANNONCES SURÉVALUÉES (écart le plus positif) :
   ====================================================================================================
    1. [3147178650] 🚗 Renault Clio 4 en très bon état
       Prix:    7,000€ | Attendu:    4,896€ | Écart:  +43.0% | Année: 2019 | Km: 380,000
    2. [3161126708] RENAULT CLIO IV dCi 110 Initiale Paris | FULL OPTI
       Prix:    8,990€ | Attendu:    6,710€ | Écart:  +34.0% | Année: 2017 | Km: 207,000
    3. [3101566836] Renault CLIO IV 1.5 DCI 75CH ENERGY BUSINESS 5P
       Prix:    8,990€ | Attendu:    7,056€ | Écart:  +27.4% | Année: 2016 | Km: 165,000
    4. [3151967791] Clio 4 initiale Paris
       Prix:    8,900€ | Attendu:    6,999€ | Écart:  +27.2% | Année: 2017 | Km: 184,000
    5. [3155921737] Renault CLIO IV 1.5 DCI 90CH ENERGY BUSINESS 82G 5
       Prix:    8,490€ | Attendu:    6,683€ | Écart:  +27.0% | Année: 2016 | Km: 194,600
    6. [3155418369] Renault CLIO IV 1.5 DCI 90CH ENERGY BUSINESS 82G 5
       Prix:    8,490€ | Attendu:    6,683€ | Écart:  +27.0% | Année: 2016 | Km: 194,600
    7. [3144046817] Clio 5
       Prix:    9,000€ | Attendu:    7,100€ | Écart:  +26.8% | Année: 2019 | Km: 205,000
    8. [3151279318] Clio 4 ÉDITION ONE
       Prix:    8,899€ | Attendu:    7,027€ | Écart:  +26.6% | Année: 2016 | Km: 167,264
    9. [3162574180] RENAULT CLIO IV BUSINESS dCi 90 eco2 90g Business 
       Prix:    8,990€ | Attendu:    7,106€ | Écart:  +26.5% | Année: 2016 | Km: 161,000
   10. [3138994898] Clio 4 pack gt line
       Prix:    9,000€ | Attendu:    7,119€ | Écart:  +26.4% | Année: 2016 | Km: 160,000

🔎 Détection des prix suspects (seuil: -40%)...
   ⚠️  11 annonces avec prix suspect
   💾 11 signaux prix persistés dans SQLite

======================================================================
📊 TABLEAU DE BORD RÉCAPITULATIF
======================================================================

   ┌──────────────────────────────────────────────────┐
   │ Nombre total d'annonces      │              2,239 │
   │ Prix moyen                   │            7,630 € │
   │ Prix médian                  │            7,900 € │
   │ Km moyen                     │         137,567 km │
   │ Km médian                    │         134,000 km │
   │ Âge moyen                    │            8.7 ans │
   │ Âge médian                   │            9.0 ans │
   │ Km/an moyen                  │       16,073 km/an │
   └──────────────────────────────────────────────────┘

   ✅ Sauvegardé : /home/ubuntu/app/stats/clio_4/figures/dashboard_kpis.png

======================================================================
💡 INSIGHTS PRINCIPAUX
======================================================================

   🎯 Âge optimal d'achat : ~12 ans (meilleur rapport prix/ancienneté)
   ⚡ Seuil km critique : la décote s'accélère le plus autour de (300000, 999999]
   ⛽ Carburant tenant le mieux sa valeur : essence (prix/âge le plus élevé)
   👔 Les pros vendent 5.1% plus cher que les particuliers (médiane)
   🔄 Km/an médian : 15,625 km → Profil dominant : 15-25k (Intensif)
   🏭 Top 3 marques = 100% du marché : renault (2239)

======================================================================
💡 RECOMMANDATIONS
======================================================================

   🛒 POUR UN ACHETEUR :
   --------------------------------------------------
   • Sweet spot : véhicules de 5-8 ans, 60-120k km
     Prix moyen dans cette fourchette : 8,195€
     (361 annonces disponibles)
   • Prix médian du marché : 7,900€ → cible < 7,110€ pour une bonne affaire
   • Privilégier les annonces de particuliers si budget serré
   • Vérifier le km/an : < 15 000 km/an = usage normal

   💰 POUR UN VENDEUR :
   --------------------------------------------------
   • Prix médian du marché : 7,900€
   • Positionner légèrement sous le marché pour vendre vite (-5% à -10%)
   • Les véhicules < 134,000 km se vendent mieux
   • Mettre en avant un faible km/an si applicable

   🎯 SEGMENTS DE MARCHÉ :
   --------------------------------------------------
   • Budget (598 annonces) :
     Prix : 3,300€ - 6,990€
     Âge moyen : 9.2 ans | Km moyen : 169,639
   • Milieu de gamme (1089 annonces) :
     Prix : 6,999€ - 8,490€
     Âge moyen : 8.8 ans | Km moyen : 131,822
   • Premium (552 annonces) :
     Prix : 8,499€ - 9,000€
     Âge moyen : 8.1 ans | Km moyen : 114,156

======================================================================
💾 EXPORT DES RÉSULTATS EN BASE SQLite
======================================================================
   📌 Run #58 créé
   🔍 Modèle : clio_4
   📎 2239 annonces liées au run
   ✅ Stats descriptives : 5 variables
   ✅ Modèle régression : 2 coefficients (R²=0.328)
   ✅ Référentiel prix : 48 segments
   ✅ Classifications deal : 2239 annonces

   💾 Tout exporté dans /home/ubuntu/app/db/lbc.sqlite

══════════════════════════════════════════════════════════════════════
  ✅ ANALYSE TERMINÉE en 4.6 secondes
  📊 2239 annonces analysées  (run #58)
  🔍 Modèle           : clio_4
  💾 Base SQLite      : /home/ubuntu/app/db/lbc.sqlite
  📁 Figures          : /home/ubuntu/app/stats/clio_4/figures
══════════════════════════════════════════════════════════════════════
Récupération de la page 1/2 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=toyota+yaris&price=3000-9000&regdate=2016-max&gearbox=1&seats=5%2C4&u_car_brand=TOYOTA&order=asc&page=1
  → 35 annonces récupérées (total en mémoire: 35)
Export de 35 annonces vers /home/ubuntu/app/leboncoin_ads_yaris_20260317_140254.csv réussi.
Récupération de la page 2/2 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=toyota+yaris&price=3000-9000&regdate=2016-max&gearbox=1&seats=5%2C4&u_car_brand=TOYOTA&order=asc&page=2
  → 14 annonces récupérées (total en mémoire: 49)
Export de 49 annonces vers /home/ubuntu/app/leboncoin_ads_yaris_20260317_140254.csv réussi.

Terminé : 49 annonces au total dans /home/ubuntu/app/leboncoin_ads_yaris_20260317_140254.csv
INFO: Model override : yaris
INFO: Schéma initialisé dans /home/ubuntu/app/db/lbc.sqlite
════════════════════════════════════════════════════════════
  📦 MIGRATION CSV → SQLite unifié
════════════════════════════════════════════════════════════

📂 leboncoin_ads_yaris_20260317_140254.csv
   ✅ 49 lus, 49 insérés, 0 ignorés, 0 erreurs

────────────────────────────────────────────────────────────
  📊 TOTAL : 49 lus, 49 insérés
  💾 Base : /home/ubuntu/app/db/lbc.sqlite
  📌 5679 annonces en base
════════════════════════════════════════════════════════════
INFO: 49 list_id lus dans le CSV.
INFO: 49 annonces actives en base pour toyota yaris.
INFO: Aucune annonce manquante — toutes présentes dans le crawl.
════════════════════════════════════════════════════════════
  CHECK DISPONIBILITÉ
  CSV   : leboncoin_ads_yaris_20260317_140254.csv
  Brand : toyota  |  Modèle : yaris
════════════════════════════════════════════════════════════

  Annonces dans le CSV    : 49
  Annonces actives en DB  : 49
  Absentes du crawl       : 0
  Marquées indisponibles  : 0
════════════════════════════════════════════════════════════
══════════════════════════════════════════════════════════════════════
  🚗 ANALYSEUR LEBONCOIN - Analyses Descriptives Véhicules
══════════════════════════════════════════════════════════════════════
  💾 Base SQLite       : /home/ubuntu/app/db/lbc.sqlite
  📁 Dossier figures  : /home/ubuntu/app/stats/yaris/figures
  🔍 Modèle filtré    : yaris
  📊 Graphiques       : Non
══════════════════════════════════════════════════════════════════════
📂 Chargement depuis SQLite : /home/ubuntu/app/db/lbc.sqlite
   ✅ 95 annonces chargées (modèle 'yaris')

======================================================================
📊 EXPLORATION DES DONNÉES BRUTES
======================================================================

📌 Nombre total d'annonces : 95

📋 Premières lignes (colonnes parsées) :
      list_id                                subject  price_eur  year_model  mileage_km     fuel   brand  model owner_type first_publication_date
0  3149141739           TOYOTA YARIS 69 VVT-i Active       7490        2015      132826  essence  toyota  yaris        pro    2026-02-22 05:48:49
1  3045595309       Toyota Yaris 69 VVT-I DYNAMIC 5P       8200        2015      110000  essence  toyota  yaris        pro    2025-08-25 15:40:00
2  3122430376  TOYOTA YARIS 1.3 VVT-i 69 CH TENDANCE       6990        2015      134360  essence  toyota  yaris        pro    2026-01-04 17:35:29
3  3151345668                           Toyota Yaris       2500        2016      150000   diesel  toyota  yaris    private    2026-02-25 20:06:54
4  3152706239                           Toyota yaris       7700        2017      119800   diesel  toyota  yaris    private    2026-02-28 12:41:35

❓ Valeurs manquantes par colonne clé :
   list_id                        :    0 manquantes (0.0%)
   subject                        :    0 manquantes (0.0%)
   price_eur                      :    0 manquantes (0.0%)
   year_model                     :    0 manquantes (0.0%)
   mileage_km                     :    0 manquantes (0.0%)
   fuel                           :    0 manquantes (0.0%)
   brand                          :    0 manquantes (0.0%)
   model                          :    0 manquantes (0.0%)
   owner_type                     :    0 manquantes (0.0%)
   first_publication_date         :    0 manquantes (0.0%)

📅 Période couverte :
   Première publication : 2025-06-13 15:11:00
   Dernière publication : 2026-03-17 08:05:13
   Durée : 276 jours

👤 Répartition par type de vendeur :
   pro             :   53 (55.8%)
   private         :   42 (44.2%)

⛽ Répartition par carburant :
   essence              :   82 (86.3%)
   diesel               :   13 (13.7%)

🏭 Top 10 marques :
   toyota               :   95 (100.0%)

🧮 Création des colonnes calculées...
   ✅ Colonnes ajoutées : age_years, km_per_year, price_per_km

🧹 Nettoyage des données...

   📊 Rapport de nettoyage :
      prix_aberrants            :    0 lignes supprimées
      km_aberrants              :    0 lignes supprimées
      annee_aberrante           :    0 lignes supprimées
      age_negatif               :    0 lignes supprimées
      ─────────────────────────────────────────────
      Total supprimé          :    0
      Restantes               :   95 / 95
      Pourcentage conservé    : 100.0%

🔍 Détection des outliers (méthode IQR)...
   price_eur            :    2 outliers (2.1%)
      Bornes IQR : [5,240 ; 11,240]
   mileage_km           :    1 outliers (1.1%)
      Bornes IQR : [24,869 ; 213,239]
   age_years            :    2 outliers (2.1%)
      Bornes IQR : [5 ; 13]

   📌 Total d'annonces outliers (au moins 1 variable) : 3 (3.2%)
   ⚠️  Les outliers sont identifiés mais NON supprimés.

======================================================================
📊 RÉSUMÉ APRÈS NETTOYAGE
======================================================================
   Nombre d'annonces restantes : 95
   Dont outliers identifiés    : 3
   Annonces non-outliers       : 92

   Plages de valeurs :
      price_eur            : [     2,500 ;      9,000]  (moy:      7,969)
      mileage_km           : [    15,333 ;    200,000]  (moy:    117,468)
      year_model           : [     2,015 ;      2,025]  (moy:      2,017)
      age_years            : [         1 ;         11]  (moy:          9)
      km_per_year          : [     5,111 ;    143,200]  (moy:     14,212)

   💾 95 annonces enrichies persistées dans SQLite

🔎 Détection des annonces suspectes...
   ✅ Aucune annonce suspecte détectée

======================================================================
📊 STATISTIQUES DESCRIPTIVES GLOBALES
======================================================================

📊 Tableau récapitulatif (valeurs brutes) :
   Variable  Count          Mean   Median          Std     Min           Q1            Q3      Max          IQR
  price_eur     95   7968.578947   8200.0  1144.729891  2500.0  7490.000000   8990.000000   9000.0  1500.000000
 mileage_km     95 117468.368421 112500.0 34944.048136 15333.0 95507.500000 142600.000000 200000.0 47092.500000
 year_model     95   2016.863158   2016.0     1.667018  2015.0  2016.000000   2018.000000   2025.0     2.000000
  age_years     95      9.136842     10.0     1.667018     1.0     8.000000     10.000000     11.0     2.000000
km_per_year     95  14212.276802  12750.0 13981.813401  5111.0  9826.642857  14655.714286 143200.0  4829.071429

📊 Tableau formaté :
   Variable Count     Mean   Median       Std     Min      Q1       Q3       Max     IQR
  price_eur    95    7,969    8,200  1,144.73   2,500   7,490    8,990     9,000   1,500
 mileage_km    95  117,468  112,500 34,944.05  15,333  95,508  142,600   200,000  47,092
 year_model    95    2,017    2,016      1.67   2,015   2,016    2,018     2,025       2
  age_years    95      9.1     10.0      1.67     1.0     8.0     10.0      11.0     2.0
km_per_year    95 14,212.3 12,750.0 13,981.81 5,111.0 9,826.6 14,655.7 143,200.0 4,829.1

📝 INTERPRÉTATION DES STATISTIQUES :
--------------------------------------------------

   📌 price_eur :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 14%, σ = 1,145)
      → Étendue : [2,500 ; 9,000] (IQR = 1,500)

   📌 mileage_km :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Dispersion MODÉRÉE (CV = 30%, σ = 34,944)
      → Étendue : [15,333 ; 200,000] (IQR = 47,092)

   📌 year_model :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 0%, σ = 2)
      → Étendue : [2,015 ; 2,025] (IQR = 2)

   📌 age_years :
      → Distribution asymétrique GAUCHE (moyenne 9 < médiane 10)
        Quelques valeurs basses tirent la moyenne vers le bas.
      → Faible dispersion (CV = 18%, σ = 2)
      → Étendue : [1 ; 11] (IQR = 2)

   📌 km_per_year :
      → Distribution asymétrique DROITE (moyenne 14,212 > médiane 12,750)
        Quelques valeurs élevées tirent la moyenne vers le haut.
      → FORTE dispersion (CV = 98%, σ = 13,982)
      → Étendue : [5,111 ; 143,200] (IQR = 4,829)

======================================================================
📊 DISTRIBUTIONS PAR CATÉGORIES
======================================================================

📊 Prix moyen par année modèle...

   📋 Table : Prix par année modèle
   ---------------------------------------------------------------------------
    Année    Nb   Prix moy   Prix méd   Décote %
   ---------------------------------------------------------------------------
     2015    16      7,880      7,980        N/A
     2016    33      7,731      7,990      +1.9%
     2017    19      8,334      8,500      -7.8%
     2018    13      8,134      8,900      +2.4%
     2019    11      8,394      8,600      -3.2%

   📌 Décote annuelle moyenne : -1.7%

📊 Prix moyen par tranche de kilométrage...

   📋 Table : Prix par tranche de km
   ----------------------------------------------------------------------
        Tranche    Nb   Prix moy   Prix méd      Var %
   ----------------------------------------------------------------------
          0-20k     1      5,250      5,250        N/A
         20-50k     1      8,990      8,990     +71.2%
         50-80k    11      8,721      8,990      -3.0%
        80-120k    38      8,259      8,490      -5.3%
       120-160k    34      7,679      7,990      -7.0%
       160-200k     9      7,269      6,990      -5.3%
          200k+     1      6,500      6,500     -10.6%

📊 Prix moyen par âge...

   📋 Table : Prix par âge
   -----------------------------------------------------------------
     Âge    Nb   Prix moy   Décote %
   -----------------------------------------------------------------
       7    11      8,394        N/A
       8    13      8,134      -3.1%
       9    19      8,334      +2.5%
      10    33      7,731      -7.2%
      11    16      7,880      +1.9%

   📌 La décote ralentit significativement à 11 ans

📊 Prix par type de carburant...

   📋 Table : Prix par carburant
   ----------------------------------------------------------------------
         Carburant    Nb   Prix moy   Prix méd
   ----------------------------------------------------------------------
            diesel    13      7,536      8,000
           essence    82      8,037      8,345

   📌 Carburant avec prix médian le plus élevé : essence (8,345€)
   📌 Carburant avec prix médian le plus bas : diesel (8,000€)

📊 Prix par type de vendeur...

   📋 Table : Prix par type de vendeur
   ------------------------------------------------------------
         Type    Nb   Prix moy   Prix méd
   ------------------------------------------------------------
      private    42      7,708      8,000
          pro    53      8,175      8,490

   📌 Test Mann-Whitney (médiane) : p = 0.2191
   ❌ Différence NON significative (p >= 0.05)
   📌 Écart médian Pro - Particulier : +490€

📊 Prix par modèle de véhicule...
   ℹ️ Un seul modèle détecté (yaris) — comparaison non applicable

   ✅ Toutes les distributions par catégorie sauvegardées dans /home/ubuntu/app/stats/yaris/figures

======================================================================
📊 ANALYSES AVANCÉES - SEUILS PSYCHOLOGIQUES
======================================================================

📊 Analyse des seuils de kilométrage...

   📋 Taux de décote par tranche de 10k km :
   --------------------------------------------------
        60k : décote    1.2% (n=  7)
        70k : décote   -4.1% (n=  2)
        80k : décote    7.2% (n=  4)
        90k : décote   -3.1% (n= 11)
       100k : décote    5.8% (n= 12)
       110k : décote    0.5% (n= 11)
       120k : décote   -4.3% (n=  7)
       130k : décote    6.6% (n=  8)
       140k : décote    4.8% (n= 13)
       150k : décote    6.0% (n=  6)
       160k : décote    4.0% (n=  2)
       170k : décote  -15.5% (n=  5)
       180k : décote   17.0% (n=  2) ⚡

   📌 Seuils où la décote s'accélère (> 8%) :
      → 180k km : 17.0%
   ✅ Sauvegardé : /home/ubuntu/app/stats/yaris/figures/seuils_km.png

📊 Analyse des seuils d'âge...

   📋 Taux de décote par année d'âge :
   ---------------------------------------------
     8 ans : décote    3.1% (n= 13)
     9 ans : décote   -2.5% (n= 19) 🐢 LENTE
    10 ans : décote    7.2% (n= 33)
    11 ans : décote   -1.9% (n= 16) 🐢 LENTE

   📌 Décote lente (< 5% par an) :
      → 8 ans : 3.1%
      → 9 ans : -2.5%
      → 11 ans : -1.9%
   ✅ Sauvegardé : /home/ubuntu/app/stats/yaris/figures/seuils_age.png

======================================================================
📊 IDENTIFICATION DES BONNES AFFAIRES
======================================================================

📊 Construction du modèle de prix attendu...
   📌 Modèle : prix = 99.55 × âge + -0.0120 × km + 8,471
   📌 R² = 0.136
📊 Calcul des écarts de prix...

   📋 Classification des annonces :
      🌟 Excellente affaire        :    6 (  6.3%)
      👍 Bonne affaire             :   12 ( 12.6%)
      📊 Prix marché               :   58 ( 61.1%)
      💰 Cher                      :   16 ( 16.8%)
      🔴 Très cher                 :    3 (  3.2%)
📊 Graphique : Distribution des écarts de prix...
   ✅ Sauvegardé : /home/ubuntu/app/stats/yaris/figures/ecarts_prix.png

   🌟 TOP 10 MEILLEURES AFFAIRES (écart le plus négatif) :
   ====================================================================================================
    1. [3151345668] Toyota Yaris
       Prix:    2,500€ | Attendu:    7,664€ | Écart:  -67.4% | Année: 2016 | Km: 150,000
    2. [3152322073] Toyota Yaris 1.0 VVTI PRO EXPORT (0101261)
       Prix:    5,250€ | Attendu:    8,585€ | Écart:  -38.8% | Année: 2023 | Km: 15,333
    3. [3157660912] Toyota Yaris
       Prix:    5,500€ | Attendu:    7,957€ | Écart:  -30.9% | Année: 2018 | Km: 109,000
    4. [3161632025] Toyota Yaris III - 5P - 2016
       Prix:    5,500€ | Attendu:    7,543€ | Écart:  -27.1% | Année: 2016 | Km: 160,000
    5. [3157975215] Toyota yaris 2011
       Prix:    5,150€ | Attendu:    6,849€ | Écart:  -24.8% | Année: 2025 | Km: 143,200
    6. [3160315775] Toyota aygo xplay
       Prix:    6,399€ | Attendu:    8,041€ | Écart:  -20.4% | Année: 2018 | Km: 102,000
    7. [3096659493] Toyota Yaris 3
       Prix:    6,300€ | Attendu:    7,811€ | Écart:  -19.3% | Année: 2015 | Km: 146,000
    8. [3159781517] Toyota Yaris-III Phase-2 1.3VTTi 16V 99Cv 1ère Mai
       Prix:    5,950€ | Attendu:    7,290€ | Écart:  -18.4% | Année: 2016 | Km: 181,093
    9. [3156006972] Toyota yaris
       Prix:    7,000€ | Attendu:    8,445€ | Écart:  -17.1% | Année: 2016 | Km: 85,000
   10. [3152415215] Toyota Yaris 3
       Prix:    6,500€ | Attendu:    7,811€ | Écart:  -16.8% | Année: 2015 | Km: 146,000

   🔴 TOP 10 ANNONCES SURÉVALUÉES (écart le plus positif) :
   ====================================================================================================
    1. [3157352360] Toyota Yaris III 1.5 VVT-i 110 ch – Design Y20-201
       Prix:    8,900€ | Attendu:    7,064€ | Écart:  +26.0% | Année: 2019 | Km: 175,000
    2. [3151218398] TOYOTA Yaris 3 Phase 2 / 1.3 VVTi 16V 100 cv *Fini
       Prix:    8,990€ | Attendu:    7,351€ | Écart:  +22.3% | Année: 2016 | Km: 176,000
    3. [3153117476] Toyota Yaris 70 VVT-i France 5p MY19
       Prix:    8,990€ | Attendu:    7,424€ | Écart:  +21.1% | Année: 2018 | Km: 153,356
    4. [3151923222] Toyota Yaris 110 VVT-i Design Y20 5p RC19
       Prix:    8,990€ | Attendu:    7,644€ | Écart:  +17.6% | Année: 2019 | Km: 126,787
    5. [3135900987] TOYOTA YARIS RC18 110 VVT-i COLLECTION
       Prix:    8,990€ | Attendu:    7,645€ | Écart:  +17.6% | Année: 2018 | Km: 135,000
    6. [3006906577] Toyota Yaris III 69 VVT-i France
       Prix:    8,990€ | Attendu:    7,774€ | Écart:  +15.6% | Année: 2016 | Km: 140,770
    7. [3146935741] Toyota Yaris 1.4 D-4D 90 Business
       Prix:    8,990€ | Attendu:    7,814€ | Écart:  +15.0% | Année: 2017 | Km: 129,178
    8. [3154060767] Toyota yaris
       Prix:    9,000€ | Attendu:    7,851€ | Écart:  +14.6% | Année: 2017 | Km: 126,126
    9. [3159149873] Toyota YARIS 69 VVT-I FRANCE 5P
       Prix:    8,990€ | Attendu:    7,953€ | Écart:  +13.0% | Année: 2017 | Km: 117,640
   10. [3154999177] Toyota Yaris 1.4 l D4D
       Prix:    8,900€ | Attendu:    7,877€ | Écart:  +13.0% | Année: 2016 | Km: 132,200

🔎 Détection des prix suspects (seuil: -40%)...
   ⚠️  1 annonces avec prix suspect
   💾 1 signaux prix persistés dans SQLite

======================================================================
📊 TABLEAU DE BORD RÉCAPITULATIF
======================================================================

   ┌──────────────────────────────────────────────────┐
   │ Nombre total d'annonces      │                 95 │
   │ Prix moyen                   │            7,969 € │
   │ Prix médian                  │            8,200 € │
   │ Km moyen                     │         117,468 km │
   │ Km médian                    │         112,500 km │
   │ Âge moyen                    │            9.1 ans │
   │ Âge médian                   │           10.0 ans │
   │ Km/an moyen                  │       14,212 km/an │
   └──────────────────────────────────────────────────┘

   ✅ Sauvegardé : /home/ubuntu/app/stats/yaris/figures/dashboard_kpis.png

======================================================================
💡 INSIGHTS PRINCIPAUX
======================================================================

   🎯 Âge optimal d'achat : ~11 ans (meilleur rapport prix/ancienneté)
   ⚡ Seuil km critique : la décote s'accélère le plus autour de (40000, 60000]
   ⛽ Carburant tenant le mieux sa valeur : essence (prix/âge le plus élevé)
   👔 Les pros vendent 6.1% plus cher que les particuliers (médiane)
   🔄 Km/an médian : 12,750 km → Profil dominant : 10-15k (Normal)
   🏭 Top 3 marques = 100% du marché : toyota (95)

======================================================================
💡 RECOMMANDATIONS
======================================================================

   🛒 POUR UN ACHETEUR :
   --------------------------------------------------
   • Sweet spot : véhicules de 5-8 ans, 60-120k km
     Prix moyen dans cette fourchette : 8,409€
     (14 annonces disponibles)
   • Prix médian du marché : 8,200€ → cible < 7,380€ pour une bonne affaire
   • Privilégier les annonces de particuliers si budget serré
   • Vérifier le km/an : < 15 000 km/an = usage normal

   💰 POUR UN VENDEUR :
   --------------------------------------------------
   • Prix médian du marché : 8,200€
   • Positionner légèrement sous le marché pour vendre vite (-5% à -10%)
   • Les véhicules < 112,500 km se vendent mieux
   • Mettre en avant un faible km/an si applicable

   🎯 SEGMENTS DE MARCHÉ :
   --------------------------------------------------
   • Budget (29 annonces) :
     Prix : 2,500€ - 7,490€
     Âge moyen : 9.1 ans | Km moyen : 132,568
   • Milieu de gamme (60 annonces) :
     Prix : 7,500€ - 8,990€
     Âge moyen : 9.2 ans | Km moyen : 111,844
   • Premium (6 annonces) :
     Prix : 8,999€ - 9,000€
     Âge moyen : 9.0 ans | Km moyen : 100,730

======================================================================
💾 EXPORT DES RÉSULTATS EN BASE SQLite
======================================================================
   📌 Run #59 créé
   🔍 Modèle : yaris
   📎 95 annonces liées au run
   ✅ Stats descriptives : 5 variables
   ✅ Modèle régression : 2 coefficients (R²=0.136)
   ✅ Référentiel prix : 22 segments
   ✅ Classifications deal : 95 annonces

   💾 Tout exporté dans /home/ubuntu/app/db/lbc.sqlite

══════════════════════════════════════════════════════════════════════
  ✅ ANALYSE TERMINÉE en 3.8 secondes
  📊 95 annonces analysées  (run #59)
  🔍 Modèle           : yaris
  💾 Base SQLite      : /home/ubuntu/app/db/lbc.sqlite
  📁 Figures          : /home/ubuntu/app/stats/yaris/figures
══════════════════════════════════════════════════════════════════════
Récupération de la page 1/4 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=i20&price=3000-9000&regdate=2016-max&gearbox=1&seats=5%2C4&u_car_brand=HYUNDAI&u_car_model=HYUNDAI_i20&order=asc&page=1
  → 35 annonces récupérées (total en mémoire: 35)
Export de 35 annonces vers /home/ubuntu/app/leboncoin_ads_i20_20260317_140304.csv réussi.
Récupération de la page 2/4 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=i20&price=3000-9000&regdate=2016-max&gearbox=1&seats=5%2C4&u_car_brand=HYUNDAI&u_car_model=HYUNDAI_i20&order=asc&page=2
  → 35 annonces récupérées (total en mémoire: 70)
Export de 70 annonces vers /home/ubuntu/app/leboncoin_ads_i20_20260317_140304.csv réussi.
Récupération de la page 3/4 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=i20&price=3000-9000&regdate=2016-max&gearbox=1&seats=5%2C4&u_car_brand=HYUNDAI&u_car_model=HYUNDAI_i20&order=asc&page=3
  → 35 annonces récupérées (total en mémoire: 105)
Export de 105 annonces vers /home/ubuntu/app/leboncoin_ads_i20_20260317_140304.csv réussi.
Récupération de la page 4/4 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=i20&price=3000-9000&regdate=2016-max&gearbox=1&seats=5%2C4&u_car_brand=HYUNDAI&u_car_model=HYUNDAI_i20&order=asc&page=4
  → 15 annonces récupérées (total en mémoire: 120)
Export de 120 annonces vers /home/ubuntu/app/leboncoin_ads_i20_20260317_140304.csv réussi.

Terminé : 120 annonces au total dans /home/ubuntu/app/leboncoin_ads_i20_20260317_140304.csv
INFO: Model override : i20
INFO: Schéma initialisé dans /home/ubuntu/app/db/lbc.sqlite
════════════════════════════════════════════════════════════
  📦 MIGRATION CSV → SQLite unifié
════════════════════════════════════════════════════════════

📂 leboncoin_ads_i20_20260317_140304.csv
   ✅ 120 lus, 120 insérés, 0 ignorés, 0 erreurs

────────────────────────────────────────────────────────────
  📊 TOTAL : 120 lus, 120 insérés
  💾 Base : /home/ubuntu/app/db/lbc.sqlite
  📌 5681 annonces en base
════════════════════════════════════════════════════════════
INFO: 120 list_id lus dans le CSV.
INFO: 121 annonces actives en base pour hyundai i20.
INFO: 1 annonce(s) marquées indisponibles.
════════════════════════════════════════════════════════════
  CHECK DISPONIBILITÉ
  CSV   : leboncoin_ads_i20_20260317_140304.csv
  Brand : hyundai  |  Modèle : i20
════════════════════════════════════════════════════════════

  Annonces dans le CSV    : 120
  Annonces actives en DB  : 121
  Absentes du crawl       : 1
  Marquées indisponibles  : 1
════════════════════════════════════════════════════════════

  Vérification :
  SELECT list_id, available, unavailable_detected_at FROM ads WHERE available = 0;
══════════════════════════════════════════════════════════════════════
  🚗 ANALYSEUR LEBONCOIN - Analyses Descriptives Véhicules
══════════════════════════════════════════════════════════════════════
  💾 Base SQLite       : /home/ubuntu/app/db/lbc.sqlite
  📁 Dossier figures  : /home/ubuntu/app/stats/i20/figures
  🔍 Modèle filtré    : i20
  📊 Graphiques       : Non
══════════════════════════════════════════════════════════════════════
📂 Chargement depuis SQLite : /home/ubuntu/app/db/lbc.sqlite
   ✅ 202 annonces chargées (modèle 'i20')

======================================================================
📊 EXPLORATION DES DONNÉES BRUTES
======================================================================

📌 Nombre total d'annonces : 202

📋 Premières lignes (colonnes parsées) :
      list_id                                     subject  price_eur  year_model  mileage_km     fuel    brand model owner_type first_publication_date
0  3068840554                      HYUNDAI i20 1.2 Initia       8990        2020       91000  essence  hyundai   i20        pro    2025-10-04 11:09:00
1  3150341430                   Hyundai i20 1.2 75 Initia       8990        2019       93859  essence  hyundai   i20        pro    2026-02-24 00:06:00
2  3142118035            Hyundai i20 1.6 CRDI - 16V TURBO       7990        2016      129000   diesel  hyundai   i20        pro    2026-02-09 11:27:08
3  3144114421       Hyundai I20 1.0 T-GDI 100CH INTUITIVE       8990        2019      138310  essence  hyundai   i20        pro    2026-02-13 02:48:08
4  3143181277  GARANTIE 12 MOIS / Crit'air 1 / HYUNAI I20       8990        2015       59700  essence  hyundai   i20        pro    2026-02-11 10:52:53

❓ Valeurs manquantes par colonne clé :
   list_id                        :    0 manquantes (0.0%)
   subject                        :    0 manquantes (0.0%)
   price_eur                      :    0 manquantes (0.0%)
   year_model                     :    0 manquantes (0.0%)
   mileage_km                     :    0 manquantes (0.0%)
   fuel                           :    0 manquantes (0.0%)
   brand                          :    0 manquantes (0.0%)
   model                          :    0 manquantes (0.0%)
   owner_type                     :    0 manquantes (0.0%)
   first_publication_date         :    0 manquantes (0.0%)

📅 Période couverte :
   Première publication : 2025-04-14 15:12:00
   Dernière publication : 2026-03-17 12:33:40
   Durée : 336 jours

👤 Répartition par type de vendeur :
   private         :  114 (56.4%)
   pro             :   88 (43.6%)

⛽ Répartition par carburant :
   essence              :  160 (79.2%)
   diesel               :   41 (20.3%)
   autre                :    1 (0.5%)

🏭 Top 10 marques :
   hyundai              :  202 (100.0%)

🧮 Création des colonnes calculées...
   ✅ Colonnes ajoutées : age_years, km_per_year, price_per_km

🧹 Nettoyage des données...

   📊 Rapport de nettoyage :
      prix_aberrants            :    0 lignes supprimées
      km_aberrants              :    0 lignes supprimées
      annee_aberrante           :    0 lignes supprimées
      age_negatif               :    0 lignes supprimées
      ─────────────────────────────────────────────
      Total supprimé          :    0
      Restantes               :  202 / 202
      Pourcentage conservé    : 100.0%

🔍 Détection des outliers (méthode IQR)...
   price_eur            :    2 outliers (1.0%)
      Bornes IQR : [4,750 ; 10,750]
   mileage_km           :    4 outliers (2.0%)
      Bornes IQR : [28,750 ; 218,750]
   age_years            :   18 outliers (8.9%)
      Bornes IQR : [8 ; 12]

   📌 Total d'annonces outliers (au moins 1 variable) : 24 (11.9%)
   ⚠️  Les outliers sont identifiés mais NON supprimés.

======================================================================
📊 RÉSUMÉ APRÈS NETTOYAGE
======================================================================
   Nombre d'annonces restantes : 202
   Dont outliers identifiés    : 24
   Annonces non-outliers       : 178

   Plages de valeurs :
      price_eur            : [     3,800 ;      9,000]  (moy:      7,731)
      mileage_km           : [        95 ;    230,567]  (moy:    123,314)
      year_model           : [     2,015 ;      2,020]  (moy:      2,017)
      age_years            : [         6 ;         11]  (moy:          9)
      km_per_year          : [        12 ;     24,308]  (moy:     13,475)

   💾 202 annonces enrichies persistées dans SQLite

🔎 Détection des annonces suspectes...
   ⚠️  3 signaux de suspicion détectés
      km_trop_bas_diesel: 2
      km_trop_bas_essence: 1
   💾 3 signaux persistés dans SQLite

======================================================================
📊 STATISTIQUES DESCRIPTIVES GLOBALES
======================================================================

📊 Tableau récapitulatif (valeurs brutes) :
   Variable  Count          Mean        Median          Std      Min           Q1       Q3           Max         IQR
  price_eur    202   7730.910891   7990.000000  1095.217710 3800.000   7000.00000   8500.0   9000.000000  1500.00000
 mileage_km    202 123313.757426 125996.000000 36207.061906   95.000 100000.00000 147500.0 230567.000000 47500.00000
 year_model    202   2016.698020   2016.000000     1.194055 2015.000   2016.00000   2017.0   2020.000000     1.00000
  age_years    202      9.301980     10.000000     1.194055    6.000      9.00000     10.0     11.000000     1.00000
km_per_year    202  13474.925152  13308.766667  4245.449569   11.875  10577.69697  16387.5  24308.166667  5809.80303

📊 Tableau formaté :
   Variable Count     Mean   Median       Std   Min       Q1       Q3      Max     IQR
  price_eur   202    7,731    7,990  1,095.22 3,800    7,000    8,500    9,000   1,500
 mileage_km   202  123,314  125,996 36,207.06    95  100,000  147,500  230,567  47,500
 year_model   202    2,017    2,016      1.19 2,015    2,016    2,017    2,020       1
  age_years   202      9.3     10.0      1.19   6.0      9.0     10.0     11.0     1.0
km_per_year   202 13,474.9 13,308.8  4,245.45  11.9 10,577.7 16,387.5 24,308.2 5,809.8

📝 INTERPRÉTATION DES STATISTIQUES :
--------------------------------------------------

   📌 price_eur :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 14%, σ = 1,095)
      → Étendue : [3,800 ; 9,000] (IQR = 1,500)

   📌 mileage_km :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Dispersion MODÉRÉE (CV = 29%, σ = 36,207)
      → Étendue : [95 ; 230,567] (IQR = 47,500)

   📌 year_model :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 0%, σ = 1)
      → Étendue : [2,015 ; 2,020] (IQR = 1)

   📌 age_years :
      → Distribution asymétrique GAUCHE (moyenne 9 < médiane 10)
        Quelques valeurs basses tirent la moyenne vers le bas.
      → Faible dispersion (CV = 13%, σ = 1)
      → Étendue : [6 ; 11] (IQR = 1)

   📌 km_per_year :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Dispersion MODÉRÉE (CV = 32%, σ = 4,245)
      → Étendue : [12 ; 24,308] (IQR = 5,810)

======================================================================
📊 DISTRIBUTIONS PAR CATÉGORIES
======================================================================

📊 Prix moyen par année modèle...

   📋 Table : Prix par année modèle
   ---------------------------------------------------------------------------
    Année    Nb   Prix moy   Prix méd   Décote %
   ---------------------------------------------------------------------------
     2015    25      7,574      7,800        N/A
     2016    80      7,606      7,900      -0.4%
     2017    51      7,587      7,500      +0.3%
     2018    28      8,012      8,240      -5.6%
     2019    13      8,395      8,490      -4.8%
     2020     5      8,684      8,980      -3.4%

   📌 Décote annuelle moyenne : -2.8%

📊 Prix moyen par tranche de kilométrage...

   📋 Table : Prix par tranche de km
   ----------------------------------------------------------------------
        Tranche    Nb   Prix moy   Prix méd      Var %
   ----------------------------------------------------------------------
          0-20k     2      7,250      7,250        N/A
         20-50k     3      7,993      7,990     +10.3%
         50-80k    19      8,474      8,500      +6.0%
        80-120k    68      8,182      8,490      -3.4%
       120-160k    76      7,711      7,895      -5.8%
       160-200k    31      6,495      6,000     -15.8%
          200k+     3      6,130      5,900      -5.6%

📊 Prix moyen par âge...

   📋 Table : Prix par âge
   -----------------------------------------------------------------
     Âge    Nb   Prix moy   Décote %
   -----------------------------------------------------------------
       6     5      8,684        N/A
       7    13      8,395      -3.3%
       8    28      8,012      -4.6%
       9    51      7,587      -5.3%
      10    80      7,606      +0.3%
      11    25      7,574      -0.4%

   📌 La décote ralentit significativement à 10 ans

📊 Prix par type de carburant...

   📋 Table : Prix par carburant
   ----------------------------------------------------------------------
         Carburant    Nb   Prix moy   Prix méd
   ----------------------------------------------------------------------
            diesel    41      7,158      7,290
           essence   160      7,873      7,994

   📌 Carburant avec prix médian le plus élevé : essence (7,994€)
   📌 Carburant avec prix médian le plus bas : diesel (7,290€)

📊 Prix par type de vendeur...

   📋 Table : Prix par type de vendeur
   ------------------------------------------------------------
         Type    Nb   Prix moy   Prix méd
   ------------------------------------------------------------
      private   114      7,599      7,800
          pro    88      7,902      7,990

   📌 Test Mann-Whitney (médiane) : p = 0.1217
   ❌ Différence NON significative (p >= 0.05)
   📌 Écart médian Pro - Particulier : +190€

📊 Prix par modèle de véhicule...
   ℹ️ Un seul modèle détecté (i20) — comparaison non applicable

   ✅ Toutes les distributions par catégorie sauvegardées dans /home/ubuntu/app/stats/i20/figures

======================================================================
📊 ANALYSES AVANCÉES - SEUILS PSYCHOLOGIQUES
======================================================================

📊 Analyse des seuils de kilométrage...

   📋 Taux de décote par tranche de 10k km :
   --------------------------------------------------
        40k : décote  -10.3% (n=  3)
        50k : décote   -9.3% (n=  2)
        60k : décote    7.6% (n=  6)
        70k : décote   -7.0% (n= 11)
        80k : décote    2.9% (n=  7)
        90k : décote   -0.1% (n= 19)
       100k : décote    3.6% (n= 27)
       110k : décote    1.9% (n= 15)
       120k : décote    5.2% (n= 22)
       130k : décote   -2.7% (n= 23)
       140k : décote   -1.1% (n= 20)
       150k : décote    0.4% (n= 11)
       160k : décote    4.0% (n= 12)
       170k : décote   23.2% (n= 13) ⚡
       180k : décote   -8.0% (n=  5)

   📌 Seuils où la décote s'accélère (> 8%) :
      → 170k km : 23.2%
   ✅ Sauvegardé : /home/ubuntu/app/stats/i20/figures/seuils_km.png

📊 Analyse des seuils d'âge...

   📋 Taux de décote par année d'âge :
   ---------------------------------------------
     7 ans : décote    3.3% (n= 13)
     8 ans : décote    4.6% (n= 28)
     9 ans : décote    5.3% (n= 51)
    10 ans : décote   -0.3% (n= 80) 🐢 LENTE
    11 ans : décote    0.4% (n= 25) 🐢 LENTE

   📌 Décote lente (< 5% par an) :
      → 7 ans : 3.3%
      → 8 ans : 4.6%
      → 10 ans : -0.3%
      → 11 ans : 0.4%
   ✅ Sauvegardé : /home/ubuntu/app/stats/i20/figures/seuils_age.png

======================================================================
📊 IDENTIFICATION DES BONNES AFFAIRES
======================================================================

📊 Construction du modèle de prix attendu...
   📌 Modèle : prix = -187.13 × âge + -0.0144 × km + 11,244
   📌 R² = 0.273
📊 Calcul des écarts de prix...

   📋 Classification des annonces :
      🌟 Excellente affaire        :   14 (  6.9%)
      👍 Bonne affaire             :   21 ( 10.4%)
      📊 Prix marché               :  127 ( 62.9%)
      💰 Cher                      :   37 ( 18.3%)
      🔴 Très cher                 :    3 (  1.5%)
📊 Graphique : Distribution des écarts de prix...
   ✅ Sauvegardé : /home/ubuntu/app/stats/i20/figures/ecarts_prix.png

   🌟 TOP 10 MEILLEURES AFFAIRES (écart le plus négatif) :
   ====================================================================================================
    1. [3150513139] Hyundai i20 essence
       Prix:    3,800€ | Attendu:    7,662€ | Écart:  -50.4% | Année: 2015 | Km: 106,000
    2. [3160167161] Hyundai i20 2017
       Prix:    4,000€ | Attendu:    7,820€ | Écart:  -48.8% | Année: 2017 | Km: 121,054
    3. [3132112485] Vend ou échange
       Prix:    5,500€ | Attendu:    9,181€ | Écart:  -40.1% | Année: 2015 | Km: 296
    4. [3146778483] HYUNDAI i20 II 5 Portes Phase 2 1.2 i 16V 84 cv
       Prix:    4,990€ | Attendu:    7,304€ | Écart:  -31.7% | Année: 2018 | Km: 170,000
    5. [3141044598] Hyundai i20
       Prix:    5,600€ | Attendu:    7,912€ | Écart:  -29.2% | Année: 2016 | Km: 101,653
    6. [3154012812] Hyundai
       Prix:    5,100€ | Attendu:    6,929€ | Écart:  -26.4% | Année: 2016 | Km: 170,000
    7. [3159144757] Hyundai i20 1.2 essence 2016 – CT OK – pneus neufs
       Prix:    5,400€ | Attendu:    7,093€ | Écart:  -23.9% | Année: 2016 | Km: 158,600
    8. [3139554030] Hyundai i20 coupe 1.2 84 cv intuitive 3 portes
       Prix:    5,500€ | Attendu:    7,203€ | Écart:  -23.6% | Année: 2018 | Km: 177,000
    9. [3144748405] Hyundai i20 1.2 Go Klima RadioCD
       Prix:    5,385€ | Attendu:    7,032€ | Écart:  -23.4% | Année: 2017 | Km: 175,866
   10. [3163028823] Hyundai I20
       Prix:    7,000€ | Attendu:    9,043€ | Écart:  -22.6% | Année: 2018 | Km: 49,000

   🔴 TOP 10 ANNONCES SURÉVALUÉES (écart le plus positif) :
   ====================================================================================================
    1. [3105795045] HYUNDAI I20 Coupé 1.0 TGDi 120 CV 03/2016 1 ERE MA
       Prix:    8,990€ | Attendu:    7,001€ | Écart:  +28.4% | Année: 2016 | Km: 165,000
    2. [3158481657] Hyundai i20
       Prix:    8,900€ | Attendu:    7,294€ | Écart:  +22.0% | Année: 2016 | Km: 144,600
    3. [3109227704] Hyundai i20 crdi 75ch edition navy
       Prix:    8,900€ | Attendu:    7,373€ | Écart:  +20.7% | Année: 2017 | Km: 152,154
    4. [3151384014] Hyundai i20
       Prix:    8,500€ | Attendu:    7,130€ | Écart:  +19.2% | Année: 2015 | Km: 143,000
    5. [3152500439] Hyundai i20 1.0 T-GDi 100 UEFA EURO 2016
       Prix:    8,489€ | Attendu:    7,125€ | Écart:  +19.1% | Année: 2016 | Km: 156,400
    6. [2972084163] HYUNDAI I20 1.2i - 84 BERLINE Initia
       Prix:    8,990€ | Attendu:    7,619€ | Écart:  +18.0% | Année: 2015 | Km: 109,000
    7. [3140396976] HYUNDAI i20 1.1 CRDi 75 Intuitive
       Prix:    8,900€ | Attendu:    7,634€ | Écart:  +16.6% | Année: 2016 | Km: 121,000
    8. [3155001248] Vente voiture hyundai i20
       Prix:    8,500€ | Attendu:    7,332€ | Écart:  +15.9% | Année: 2018 | Km: 168,000
    9. [3127100076] Hyndai i20 2016 100cv
       Prix:    8,900€ | Attendu:    7,705€ | Écart:  +15.5% | Année: 2016 | Km: 116,000
   10. [3163165002] Hyundai i 20 business 1.0 tgdi 100cv gps ct ok cli
       Prix:    8,990€ | Attendu:    7,806€ | Écart:  +15.2% | Année: 2016 | Km: 109,000

🔎 Détection des prix suspects (seuil: -40%)...
   ⚠️  3 annonces avec prix suspect
   💾 3 signaux prix persistés dans SQLite

======================================================================
📊 TABLEAU DE BORD RÉCAPITULATIF
======================================================================

   ┌──────────────────────────────────────────────────┐
   │ Nombre total d'annonces      │                202 │
   │ Prix moyen                   │            7,731 € │
   │ Prix médian                  │            7,990 € │
   │ Km moyen                     │         123,314 km │
   │ Km médian                    │         125,996 km │
   │ Âge moyen                    │            9.3 ans │
   │ Âge médian                   │           10.0 ans │
   │ Km/an moyen                  │       13,475 km/an │
   └──────────────────────────────────────────────────┘

   ✅ Sauvegardé : /home/ubuntu/app/stats/i20/figures/dashboard_kpis.png

======================================================================
💡 INSIGHTS PRINCIPAUX
======================================================================

   🎯 Âge optimal d'achat : ~11 ans (meilleur rapport prix/ancienneté)
   ⚡ Seuil km critique : la décote s'accélère le plus autour de (160000, 180000]
   ⛽ Carburant tenant le mieux sa valeur : essence (prix/âge le plus élevé)
   👔 Les pros vendent 2.4% plus cher que les particuliers (médiane)
   🔄 Km/an médian : 13,309 km → Profil dominant : 10-15k (Normal)
   🏭 Top 3 marques = 100% du marché : hyundai (202)

======================================================================
💡 RECOMMANDATIONS
======================================================================

   🛒 POUR UN ACHETEUR :
   --------------------------------------------------
   • Sweet spot : véhicules de 5-8 ans, 60-120k km
     Prix moyen dans cette fourchette : 8,478€
     (23 annonces disponibles)
   • Prix médian du marché : 7,990€ → cible < 7,191€ pour une bonne affaire
   • Privilégier les annonces de particuliers si budget serré
   • Vérifier le km/an : < 15 000 km/an = usage normal

   💰 POUR UN VENDEUR :
   --------------------------------------------------
   • Prix médian du marché : 7,990€
   • Positionner légèrement sous le marché pour vendre vite (-5% à -10%)
   • Les véhicules < 125,996 km se vendent mieux
   • Mettre en avant un faible km/an si applicable

   🎯 SEGMENTS DE MARCHÉ :
   --------------------------------------------------
   • Budget (54 annonces) :
     Prix : 3,800€ - 7,000€
     Âge moyen : 9.5 ans | Km moyen : 147,205
   • Milieu de gamme (101 annonces) :
     Prix : 7,200€ - 8,500€
     Âge moyen : 9.4 ans | Km moyen : 122,057
   • Premium (47 annonces) :
     Prix : 8,600€ - 9,000€
     Âge moyen : 8.9 ans | Km moyen : 98,566

======================================================================
💾 EXPORT DES RÉSULTATS EN BASE SQLite
======================================================================
   📌 Run #60 créé
   🔍 Modèle : i20
   📎 202 annonces liées au run
   ✅ Stats descriptives : 5 variables
   ✅ Modèle régression : 2 coefficients (R²=0.273)
   ✅ Référentiel prix : 26 segments
   ✅ Classifications deal : 202 annonces

   💾 Tout exporté dans /home/ubuntu/app/db/lbc.sqlite

══════════════════════════════════════════════════════════════════════
  ✅ ANALYSE TERMINÉE en 3.8 secondes
  📊 202 annonces analysées  (run #60)
  🔍 Modèle           : i20
  💾 Base SQLite      : /home/ubuntu/app/db/lbc.sqlite
  📁 Figures          : /home/ubuntu/app/stats/i20/figures
══════════════════════════════════════════════════════════════════════
Récupération de la page 1/10 avec l'URL: https://www.leboncoin.fr/recherche?category=5&text=berlingo+xl&u_utility_brand=CITROEN&u_utility_model=CITROEN_Berlingo&page=1
  → 35 annonces récupérées (total en mémoire: 35)
Export de 35 annonces vers /home/ubuntu/app/leboncoin_ads_berlingo_20260317_140323.csv réussi.
Récupération de la page 2/10 avec l'URL: https://www.leboncoin.fr/recherche?category=5&text=berlingo+xl&u_utility_brand=CITROEN&u_utility_model=CITROEN_Berlingo&page=2
  → 35 annonces récupérées (total en mémoire: 70)
Export de 70 annonces vers /home/ubuntu/app/leboncoin_ads_berlingo_20260317_140323.csv réussi.
Récupération de la page 3/10 avec l'URL: https://www.leboncoin.fr/recherche?category=5&text=berlingo+xl&u_utility_brand=CITROEN&u_utility_model=CITROEN_Berlingo&page=3
  → 35 annonces récupérées (total en mémoire: 105)
Export de 105 annonces vers /home/ubuntu/app/leboncoin_ads_berlingo_20260317_140323.csv réussi.
Récupération de la page 4/10 avec l'URL: https://www.leboncoin.fr/recherche?category=5&text=berlingo+xl&u_utility_brand=CITROEN&u_utility_model=CITROEN_Berlingo&page=4
  → 35 annonces récupérées (total en mémoire: 140)
Export de 140 annonces vers /home/ubuntu/app/leboncoin_ads_berlingo_20260317_140323.csv réussi.
Récupération de la page 5/10 avec l'URL: https://www.leboncoin.fr/recherche?category=5&text=berlingo+xl&u_utility_brand=CITROEN&u_utility_model=CITROEN_Berlingo&page=5
  → 35 annonces récupérées (total en mémoire: 175)
Export de 175 annonces vers /home/ubuntu/app/leboncoin_ads_berlingo_20260317_140323.csv réussi.
Récupération de la page 6/10 avec l'URL: https://www.leboncoin.fr/recherche?category=5&text=berlingo+xl&u_utility_brand=CITROEN&u_utility_model=CITROEN_Berlingo&page=6
  → 35 annonces récupérées (total en mémoire: 210)
Export de 210 annonces vers /home/ubuntu/app/leboncoin_ads_berlingo_20260317_140323.csv réussi.
Récupération de la page 7/10 avec l'URL: https://www.leboncoin.fr/recherche?category=5&text=berlingo+xl&u_utility_brand=CITROEN&u_utility_model=CITROEN_Berlingo&page=7
  → 35 annonces récupérées (total en mémoire: 245)
Export de 245 annonces vers /home/ubuntu/app/leboncoin_ads_berlingo_20260317_140323.csv réussi.
Récupération de la page 8/10 avec l'URL: https://www.leboncoin.fr/recherche?category=5&text=berlingo+xl&u_utility_brand=CITROEN&u_utility_model=CITROEN_Berlingo&page=8
  → 35 annonces récupérées (total en mémoire: 280)
Export de 280 annonces vers /home/ubuntu/app/leboncoin_ads_berlingo_20260317_140323.csv réussi.
Récupération de la page 9/10 avec l'URL: https://www.leboncoin.fr/recherche?category=5&text=berlingo+xl&u_utility_brand=CITROEN&u_utility_model=CITROEN_Berlingo&page=9
  → 35 annonces récupérées (total en mémoire: 315)
Export de 315 annonces vers /home/ubuntu/app/leboncoin_ads_berlingo_20260317_140323.csv réussi.
Récupération de la page 10/10 avec l'URL: https://www.leboncoin.fr/recherche?category=5&text=berlingo+xl&u_utility_brand=CITROEN&u_utility_model=CITROEN_Berlingo&page=10
  → 15 annonces récupérées (total en mémoire: 330)
Export de 330 annonces vers /home/ubuntu/app/leboncoin_ads_berlingo_20260317_140323.csv réussi.

Terminé : 330 annonces au total dans /home/ubuntu/app/leboncoin_ads_berlingo_20260317_140323.csv
INFO: Model override : berlingo
INFO: Schéma initialisé dans /home/ubuntu/app/db/lbc.sqlite
════════════════════════════════════════════════════════════
  📦 MIGRATION CSV → SQLite unifié
════════════════════════════════════════════════════════════

📂 leboncoin_ads_berlingo_20260317_140323.csv
   ✅ 330 lus, 330 insérés, 0 ignorés, 0 erreurs

────────────────────────────────────────────────────────────
  📊 TOTAL : 330 lus, 330 insérés
  💾 Base : /home/ubuntu/app/db/lbc.sqlite
  📌 5684 annonces en base
════════════════════════════════════════════════════════════
INFO: 330 list_id lus dans le CSV.
INFO: 332 annonces actives en base pour citroen berlingo.
INFO: 2 annonce(s) marquées indisponibles.
════════════════════════════════════════════════════════════
  CHECK DISPONIBILITÉ
  CSV   : leboncoin_ads_berlingo_20260317_140323.csv
  Brand : citroen  |  Modèle : berlingo
════════════════════════════════════════════════════════════

  Annonces dans le CSV    : 330
  Annonces actives en DB  : 332
  Absentes du crawl       : 2
  Marquées indisponibles  : 2
════════════════════════════════════════════════════════════

  Vérification :
  SELECT list_id, available, unavailable_detected_at FROM ads WHERE available = 0;
══════════════════════════════════════════════════════════════════════
  🚗 ANALYSEUR LEBONCOIN - Analyses Descriptives Véhicules
══════════════════════════════════════════════════════════════════════
  💾 Base SQLite       : /home/ubuntu/app/db/lbc.sqlite
  📁 Dossier figures  : /home/ubuntu/app/stats/berlingo/figures
  🔍 Modèle filtré    : berlingo
  📊 Graphiques       : Non
══════════════════════════════════════════════════════════════════════
📂 Chargement depuis SQLite : /home/ubuntu/app/db/lbc.sqlite
   ✅ 478 annonces chargées (modèle 'berlingo')

======================================================================
📊 EXPLORATION DES DONNÉES BRUTES
======================================================================

📌 Nombre total d'annonces : 478

📋 Premières lignes (colonnes parsées) :
      list_id                                                                                     subject  price_eur  year_model  mileage_km    fuel    brand     model owner_type first_publication_date
0  3137494988                                           Citroen berlingo xl 3 places 130 ch eat8 19990 ht      23988        2025          50  diesel  citroen  berlingo        pro    2026-02-01 11:46:21
1  3127792883  CITROEN BERLINGO XL 950kg 1.5 BlueHDi 100ch Control BVM5 S&S 2pl - GARANTIE 6 MOIS MINIMUM      14990        2020       25000  diesel  citroen  berlingo        pro    2026-01-14 15:23:00
2  3140287724                                                                            Berlingo XL 2019      12500        2019       70000  diesel  citroen  berlingo    private    2026-02-06 10:22:45
3  3088625727                                                       Citroën Berlingo BHDI 100 CLUB XL BVM      13990        2020      105583  diesel  citroen  berlingo        pro    2025-11-07 09:24:00
4  3136059936                                                                                 Berlingo xl      17000        2021       65000  diesel  citroen  berlingo    private    2026-01-29 18:26:54

❓ Valeurs manquantes par colonne clé :
   list_id                        :    0 manquantes (0.0%)
   subject                        :    0 manquantes (0.0%)
   price_eur                      :    0 manquantes (0.0%)
   year_model                     :    0 manquantes (0.0%)
   mileage_km                     :    0 manquantes (0.0%)
   fuel                           :    0 manquantes (0.0%)
   brand                          :    0 manquantes (0.0%)
   model                          :    0 manquantes (0.0%)
   owner_type                     :    0 manquantes (0.0%)
   first_publication_date         :    0 manquantes (0.0%)

📅 Période couverte :
   Première publication : 2025-02-11 15:13:00
   Dernière publication : 2026-03-17 13:09:29
   Durée : 398 jours

👤 Répartition par type de vendeur :
   pro             :  394 (82.4%)
   private         :   84 (17.6%)

⛽ Répartition par carburant :
   diesel               :  464 (97.1%)
   électrique           :   10 (2.1%)
   essence              :    4 (0.8%)

🏭 Top 10 marques :
   citroen              :  478 (100.0%)

🧮 Création des colonnes calculées...
   ✅ Colonnes ajoutées : age_years, km_per_year, price_per_km

🧹 Nettoyage des données...

   📊 Rapport de nettoyage :
      prix_aberrants            :    0 lignes supprimées
      km_aberrants              :    2 lignes supprimées
      annee_aberrante           :    0 lignes supprimées
      age_negatif               :   12 lignes supprimées
      ─────────────────────────────────────────────
      Total supprimé          :   14
      Restantes               :  464 / 478
      Pourcentage conservé    : 97.1%

🔍 Détection des outliers (méthode IQR)...
   price_eur            :    3 outliers (0.6%)
      Bornes IQR : [-1,066 ; 31,024]
   mileage_km           :    4 outliers (0.9%)
      Bornes IQR : [-87,750 ; 246,250]
   age_years            :    3 outliers (0.6%)
      Bornes IQR : [-3 ; 13]

   📌 Total d'annonces outliers (au moins 1 variable) : 7 (1.5%)
   ⚠️  Les outliers sont identifiés mais NON supprimés.

======================================================================
📊 RÉSUMÉ APRÈS NETTOYAGE
======================================================================
   Nombre d'annonces restantes : 464
   Dont outliers identifiés    : 7
   Annonces non-outliers       : 457

   Plages de valeurs :
      price_eur            : [     2,800 ;     38,190]  (moy:     15,044)
      mileage_km           : [         1 ;    309,000]  (moy:     82,836)
      year_model           : [     2,009 ;      2,025]  (moy:      2,021)
      age_years            : [         1 ;         17]  (moy:          5)
      km_per_year          : [         1 ;     56,667]  (moy:     14,071)

   💾 464 annonces enrichies persistées dans SQLite

🔎 Détection des annonces suspectes...
   ⚠️  6 signaux de suspicion détectés
      km_trop_bas_diesel: 6
   💾 6 signaux persistés dans SQLite

======================================================================
📊 STATISTIQUES DESCRIPTIVES GLOBALES
======================================================================

📊 Tableau récapitulatif (valeurs brutes) :
   Variable  Count         Mean   Median          Std    Min           Q1         Q3           Max          IQR
  price_eur    464 15043.844828 13940.00  5861.604590 2800.0 10967.500000  18990.000  38190.000000  8022.500000
 mileage_km    464 82835.875000 85250.00 58190.368232    1.0 37500.000000 121000.000 309000.000000 83500.000000
 year_model    464  2020.739224  2020.00     2.778911 2009.0  2019.000000   2023.000   2025.000000     4.000000
  age_years    464     5.260776     6.00     2.778911    1.0     3.000000      7.000     17.000000     4.000000
km_per_year    464 14071.063487 14406.25  9400.200203    1.0  8333.333333  19538.875  56666.666667 11205.541667

📊 Tableau formaté :
   Variable Count     Mean   Median       Std   Min      Q1       Q3      Max      IQR
  price_eur   464   15,044   13,940  5,861.60 2,800  10,968   18,990   38,190    8,022
 mileage_km   464   82,836   85,250 58,190.37     1  37,500  121,000  309,000   83,500
 year_model   464    2,021    2,020      2.78 2,009   2,019    2,023    2,025        4
  age_years   464      5.3      6.0      2.78   1.0     3.0      7.0     17.0      4.0
km_per_year   464 14,071.1 14,406.2  9,400.20   1.0 8,333.3 19,538.9 56,666.7 11,205.5

📝 INTERPRÉTATION DES STATISTIQUES :
--------------------------------------------------

   📌 price_eur :
      → Distribution asymétrique DROITE (moyenne 15,044 > médiane 13,940)
        Quelques valeurs élevées tirent la moyenne vers le haut.
      → Dispersion MODÉRÉE (CV = 39%, σ = 5,862)
      → Étendue : [2,800 ; 38,190] (IQR = 8,022)

   📌 mileage_km :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → FORTE dispersion (CV = 70%, σ = 58,190)
      → Étendue : [1 ; 309,000] (IQR = 83,500)

   📌 year_model :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 0%, σ = 3)
      → Étendue : [2,009 ; 2,025] (IQR = 4)

   📌 age_years :
      → Distribution asymétrique GAUCHE (moyenne 5 < médiane 6)
        Quelques valeurs basses tirent la moyenne vers le bas.
      → FORTE dispersion (CV = 53%, σ = 3)
      → Étendue : [1 ; 17] (IQR = 4)

   📌 km_per_year :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → FORTE dispersion (CV = 67%, σ = 9,400)
      → Étendue : [1 ; 56,667] (IQR = 11,206)

======================================================================
📊 DISTRIBUTIONS PAR CATÉGORIES
======================================================================

📊 Prix moyen par année modèle...

   📋 Table : Prix par année modèle
   ---------------------------------------------------------------------------
    Année    Nb   Prix moy   Prix méd   Décote %
   ---------------------------------------------------------------------------
     2009     2      4,800      4,800        N/A
     2013     2      6,850      6,850     -42.7%
     2014     2      9,345      9,345     -36.4%
     2016    11      8,353      8,950     +10.6%
     2017    28      8,700      8,920      -4.2%
     2018    50     10,183      9,500     -17.1%
     2019    55     12,259     11,990     -20.4%
     2020    86     13,217     12,695      -7.8%
     2021    56     14,324     13,895      -8.4%
     2022    46     14,710     14,450      -2.7%
     2023    35     18,065     17,990     -22.8%
     2024    19     21,024     19,990     -16.4%
     2025    71     24,886     24,480     -18.4%

   📌 Décote annuelle moyenne : -15.5%

📊 Prix moyen par tranche de kilométrage...

   📋 Table : Prix par tranche de km
   ----------------------------------------------------------------------
        Tranche    Nb   Prix moy   Prix méd      Var %
   ----------------------------------------------------------------------
          0-20k    90     23,894     23,944        N/A
         20-50k    51     17,726     17,900     -25.8%
         50-80k    74     15,444     15,990     -12.9%
        80-120k   128     12,478     12,545     -19.2%
       120-160k    78     10,674     10,945     -14.5%
       160-200k    32      8,825      8,915     -17.3%
          200k+    11      6,433      6,000     -27.1%

📊 Prix moyen par âge...

   📋 Table : Prix par âge
   -----------------------------------------------------------------
     Âge    Nb   Prix moy   Décote %
   -----------------------------------------------------------------
       1    71     24,886        N/A
       2    19     21,024     -15.5%
       3    35     18,065     -14.1%
       4    46     14,710     -18.6%
       5    56     14,324      -2.6%
       6    86     13,217      -7.7%
       7    55     12,259      -7.2%
       8    50     10,183     -16.9%
       9    28      8,700     -14.6%
      10    11      8,353      -4.0%
      12     2      9,345     +11.9%
      13     2      6,850     -26.7%
      17     2      4,800     -29.9%

   📌 La décote ralentit significativement à 5 ans

📊 Prix par type de carburant...

   📋 Table : Prix par carburant
   ----------------------------------------------------------------------
         Carburant    Nb   Prix moy   Prix méd
   ----------------------------------------------------------------------
            diesel   451     15,041     13,900
           essence     4     12,182     11,745
        électrique     9     16,462     15,990

   📌 Carburant avec prix médian le plus élevé : électrique (15,990€)
   📌 Carburant avec prix médian le plus bas : essence (11,745€)

📊 Prix par type de vendeur...

   📋 Table : Prix par type de vendeur
   ------------------------------------------------------------
         Type    Nb   Prix moy   Prix méd
   ------------------------------------------------------------
      private    83     12,553     12,000
          pro   381     15,587     13,995

   📌 Test Mann-Whitney (médiane) : p = 0.0000
   ✅ Différence SIGNIFICATIVE (p < 0.05)
   📌 Écart médian Pro - Particulier : +1,995€

📊 Prix par modèle de véhicule...
   ℹ️ Un seul modèle détecté (berlingo) — comparaison non applicable

   ✅ Toutes les distributions par catégorie sauvegardées dans /home/ubuntu/app/stats/berlingo/figures

======================================================================
📊 ANALYSES AVANCÉES - SEUILS PSYCHOLOGIQUES
======================================================================

📊 Analyse des seuils de kilométrage...

   📋 Taux de décote par tranche de 10k km :
   --------------------------------------------------
        10k : décote   21.7% (n=  7) ⚡
        20k : décote    5.9% (n= 13)
        30k : décote    1.1% (n= 22)
        40k : décote    0.5% (n= 16)
        50k : décote   11.9% (n= 24) ⚡
        60k : décote   -0.7% (n= 28)
        70k : décote    3.1% (n= 22)
        80k : décote    8.8% (n= 31)
        90k : décote    3.7% (n= 33)
       100k : décote   10.3% (n= 32) ⚡
       110k : décote    8.8% (n= 32)
       120k : décote   -3.4% (n= 23)
       130k : décote    6.1% (n= 23)
       140k : décote    2.1% (n= 13)
       150k : décote    0.3% (n= 19)
       160k : décote   10.9% (n= 16) ⚡
       170k : décote    3.1% (n= 11)
       180k : décote   16.9% (n=  5) ⚡
       200k : décote    7.6% (n=  5)
       210k : décote  -13.0% (n=  2)
      300k+ : décote   38.0% (n=  2) ⚡

   📌 Seuils où la décote s'accélère (> 8%) :
      → 10k km : 21.7%
      → 50k km : 11.9%
      → 80k km : 8.8%
      → 100k km : 10.3%
      → 110k km : 8.8%
      → 160k km : 10.9%
      → 180k km : 16.9%
      → 300k+ km : 38.0%
   ✅ Sauvegardé : /home/ubuntu/app/stats/berlingo/figures/seuils_km.png

📊 Analyse des seuils d'âge...

   📋 Taux de décote par année d'âge :
   ---------------------------------------------
     2 ans : décote   15.5% (n= 19) ⚡ FORTE
     3 ans : décote   14.1% (n= 35)
     4 ans : décote   18.6% (n= 46) ⚡ FORTE
     5 ans : décote    2.6% (n= 56) 🐢 LENTE
     6 ans : décote    7.7% (n= 86)
     7 ans : décote    7.2% (n= 55)
     8 ans : décote   16.9% (n= 50) ⚡ FORTE
     9 ans : décote   14.6% (n= 28)
    10 ans : décote    4.0% (n= 11)
    12 ans : décote  -11.9% (n=  2) 🐢 LENTE
    13 ans : décote   26.7% (n=  2) ⚡ FORTE
    17 ans : décote   29.9% (n=  2) ⚡ FORTE

   📌 Décote rapide (> 10% par an) :
      → 2 ans : 15.5%
      → 3 ans : 14.1%
      → 4 ans : 18.6%
      → 8 ans : 16.9%
      → 9 ans : 14.6%
      → 13 ans : 26.7%
      → 17 ans : 29.9%

   📌 Décote lente (< 5% par an) :
      → 5 ans : 2.6%
      → 10 ans : 4.0%
      → 12 ans : -11.9%
   ✅ Sauvegardé : /home/ubuntu/app/stats/berlingo/figures/seuils_age.png

======================================================================
📊 IDENTIFICATION DES BONNES AFFAIRES
======================================================================

📊 Construction du modèle de prix attendu...
   📌 Modèle : prix = -921.21 × âge + -0.0506 × km + 24,083
   📌 R² = 0.776
📊 Calcul des écarts de prix...

   📋 Classification des annonces :
      🌟 Excellente affaire        :   40 (  8.7%)
      👍 Bonne affaire             :   83 ( 18.0%)
      📊 Prix marché               :  235 ( 51.0%)
      💰 Cher                      :   54 ( 11.7%)
      🔴 Très cher                 :   49 ( 10.6%)
📊 Graphique : Distribution des écarts de prix...
   ✅ Sauvegardé : /home/ubuntu/app/stats/berlingo/figures/ecarts_prix.png

   🌟 TOP 10 MEILLEURES AFFAIRES (écart le plus négatif) :
   ====================================================================================================
    1. [3156231773] Citroën Berlingo XL BLUEHDI 100 S&S ETG6 CLUB
       Prix:    3,000€ | Attendu:   10,059€ | Écart:  -70.2% | Année: 2018 | Km: 131,461
    2. [3156023107] Citroën Berlingo 1.5 BLUEHDI 100 STE XL DRIVER
       Prix:    8,000€ | Attendu:   16,508€ | Écart:  -51.5% | Année: 2021 | Km: 58,647
    3. [3158805212] EZ-923 Citroen BERLINGO XL TOLLÉE L2 1.6 BLUEHDI 1
       Prix:    7,990€ | Attendu:   16,249€ | Écart:  -50.8% | Année: 2018 | Km: 9,173
    4. [3144063650] Citroën Berlingo 1.5 BLUEDHI 100 STE XL DRIVER
       Prix:    8,000€ | Attendu:   15,987€ | Écart:  -50.0% | Année: 2022 | Km: 87,146
    5. [3156192309] Citroën Berlingo FOURGON XL BLUEHDI 100 S&S ETG6 C
       Prix:    2,800€ | Attendu:    5,467€ | Écart:  -48.8% | Année: 2017 | Km: 203,997
    6. [3156023444] Citroën Berlingo 1.5 BLUEHDI 100 STE XL DRIVER
       Prix:    8,000€ | Attendu:   15,261€ | Écart:  -47.6% | Année: 2021 | Km: 83,293
    7. [3157282073] Citroen berlingo xl 1.6 bluehdi 100 cv club
       Prix:    5,980€ | Attendu:   11,228€ | Écart:  -46.7% | Année: 2018 | Km: 108,380
    8. [3163320492] Citroën Berlingo VAN XL 950 PURETECH 130 S&S EAT8 
       Prix:    8,250€ | Attendu:   15,084€ | Écart:  -45.3% | Année: 2020 | Km: 68,597
    9. [2984931973] Citroën Berlingo Electrique Taille XL Club
       Prix:    8,590€ | Attendu:   15,414€ | Écart:  -44.3% | Année: 2018 | Km: 25,657
   10. [3156133024] Citroën berlingo xl électrique confort isotherme T
       Prix:    7,990€ | Attendu:   13,828€ | Écart:  -42.2% | Année: 2018 | Km: 57,000

   🔴 TOP 10 ANNONCES SURÉVALUÉES (écart le plus positif) :
   ====================================================================================================
    1. [3153561957] Citroën Berlingo XL 1.6 BlueHDI 100 Cabine Approfo
       Prix:    6,000€ | Attendu:    1,519€ | Écart: +295.0% | Année: 2017 | Km: 282,000
    2. [3155307735] Citroën berlingo
       Prix:    7,000€ | Attendu:    1,959€ | Écart: +257.3% | Année: 2013 | Km: 200,500
    3. [3115315205] Citroën Jumpy CAB APPROFONDIE XL BLUEHDI 180 S&S E
       Prix:   38,190€ | Attendu:   23,159€ | Écart:  +64.9% | Année: 2025 | Km: 40
    4. [3130621009] Citroen BERLINGO XL 1.6 HDI 90 ch CABINE APPROFOND
       Prix:   11,490€ | Attendu:    7,157€ | Écart:  +60.5% | Année: 2014 | Km: 116,000
    5. [3148392923] CITROEN BERLINGO 1.5 BlueHDi S&S - 130 XL Feel 7 P
       Prix:   19,990€ | Attendu:   12,462€ | Écart:  +60.4% | Année: 2018 | Km: 84,000
    6. [3097892706] Citroën Berlingo CABINE APPROFONDIE CA TAILLE XL B
       Prix:   37,140€ | Attendu:   23,161€ | Écart:  +60.4% | Année: 2025 | Km: 1
    7. [3140204221] Citroen Berlingo Van XL BlueHDi 100 S&S Cabine App
       Prix:    9,490€ | Attendu:    5,937€ | Écart:  +59.8% | Année: 2018 | Km: 212,912
    8. [3158708742] Berlingo XL 1.6L bluehdi aménagé
       Prix:   15,000€ | Attendu:   10,133€ | Écart:  +48.0% | Année: 2018 | Km: 130,000
    9. [3156325212] À vendre - Citroën Berlingo rallongée - Boîte auto
       Prix:    9,500€ | Attendu:    6,469€ | Écart:  +46.9% | Année: 2016 | Km: 166,000
   10. [3138591846] Citroën Jumpy CABINE APPROFONDIE XL BLUEHDI 180 S 
       Prix:   33,090€ | Attendu:   23,161€ | Écart:  +42.9% | Année: 2025 | Km: 10

🔎 Détection des prix suspects (seuil: -40%)...
   ⚠️  12 annonces avec prix suspect
   💾 12 signaux prix persistés dans SQLite

======================================================================
📊 TABLEAU DE BORD RÉCAPITULATIF
======================================================================

   ┌──────────────────────────────────────────────────┐
   │ Nombre total d'annonces      │                464 │
   │ Prix moyen                   │           15,044 € │
   │ Prix médian                  │           13,940 € │
   │ Km moyen                     │          82,836 km │
   │ Km médian                    │          85,250 km │
   │ Âge moyen                    │            5.3 ans │
   │ Âge médian                   │            6.0 ans │
   │ Km/an moyen                  │       14,071 km/an │
   └──────────────────────────────────────────────────┘

   ✅ Sauvegardé : /home/ubuntu/app/stats/berlingo/figures/dashboard_kpis.png

======================================================================
💡 INSIGHTS PRINCIPAUX
======================================================================

   🎯 Âge optimal d'achat : ~10 ans (meilleur rapport prix/ancienneté)
   ⚡ Seuil km critique : la décote s'accélère le plus autour de (20000, 40000]
   ⛽ Carburant tenant le mieux sa valeur : électrique (prix/âge le plus élevé)
   👔 Les pros vendent 16.6% plus cher que les particuliers (médiane)
   🔄 Km/an médian : 14,406 km → Profil dominant : 15-25k (Intensif)
   🏭 Top 3 marques = 100% du marché : citroen (464)

======================================================================
💡 RECOMMANDATIONS
======================================================================

   🛒 POUR UN ACHETEUR :
   --------------------------------------------------
   • Sweet spot : véhicules de 5-8 ans, 60-120k km
     Prix moyen dans cette fourchette : 13,082€
     (133 annonces disponibles)
   • Prix médian du marché : 13,940€ → cible < 12,546€ pour une bonne affaire
   • Privilégier les annonces de particuliers si budget serré
   • Vérifier le km/an : < 15 000 km/an = usage normal

   💰 POUR UN VENDEUR :
   --------------------------------------------------
   • Prix médian du marché : 13,940€
   • Positionner légèrement sous le marché pour vendre vite (-5% à -10%)
   • Les véhicules < 85,250 km se vendent mieux
   • Mettre en avant un faible km/an si applicable

   🎯 SEGMENTS DE MARCHÉ :
   --------------------------------------------------
   • Budget (116 annonces) :
     Prix : 2,800€ - 10,900€
     Âge moyen : 7.9 ans | Km moyen : 140,550
   • Milieu de gamme (235 annonces) :
     Prix : 10,990€ - 18,990€
     Âge moyen : 5.6 ans | Km moyen : 88,345
   • Premium (113 annonces) :
     Prix : 19,000€ - 38,190€
     Âge moyen : 1.9 ans | Km moyen : 12,132

======================================================================
💾 EXPORT DES RÉSULTATS EN BASE SQLite
======================================================================
   📌 Run #61 créé
   🔍 Modèle : berlingo
   📎 464 annonces liées au run
   ✅ Stats descriptives : 5 variables
   ✅ Modèle régression : 2 coefficients (R²=0.776)
   ✅ Référentiel prix : 56 segments
   ✅ Classifications deal : 464 annonces

   💾 Tout exporté dans /home/ubuntu/app/db/lbc.sqlite

══════════════════════════════════════════════════════════════════════
  ✅ ANALYSE TERMINÉE en 4.0 secondes
  📊 464 annonces analysées  (run #61)
  🔍 Modèle           : berlingo
  💾 Base SQLite      : /home/ubuntu/app/db/lbc.sqlite
  📁 Figures          : /home/ubuntu/app/stats/berlingo/figures
══════════════════════════════════════════════════════════════════════
Récupération de la page 1/5 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=c4&price=min-11000&regdate=2015-max&mileage=min-150000&u_car_brand=CITROEN&seats=999999&u_car_model=CITROEN_C4%2CCITROEN_C4+Aircross%2CCITROEN_C4+Cactus%2CCITROEN_C4+Picasso%2CCITROEN_C4+SpaceTourer%2CCITROEN_C4+X&page=1
  → 35 annonces récupérées (total en mémoire: 35)
Export de 35 annonces vers /home/ubuntu/app/leboncoin_ads_c4_20260317_140413.csv réussi.
Récupération de la page 2/5 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=c4&price=min-11000&regdate=2015-max&mileage=min-150000&u_car_brand=CITROEN&seats=999999&u_car_model=CITROEN_C4%2CCITROEN_C4+Aircross%2CCITROEN_C4+Cactus%2CCITROEN_C4+Picasso%2CCITROEN_C4+SpaceTourer%2CCITROEN_C4+X&page=2
  → 35 annonces récupérées (total en mémoire: 70)
Export de 70 annonces vers /home/ubuntu/app/leboncoin_ads_c4_20260317_140413.csv réussi.
Récupération de la page 3/5 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=c4&price=min-11000&regdate=2015-max&mileage=min-150000&u_car_brand=CITROEN&seats=999999&u_car_model=CITROEN_C4%2CCITROEN_C4+Aircross%2CCITROEN_C4+Cactus%2CCITROEN_C4+Picasso%2CCITROEN_C4+SpaceTourer%2CCITROEN_C4+X&page=3
  → 35 annonces récupérées (total en mémoire: 105)
Export de 105 annonces vers /home/ubuntu/app/leboncoin_ads_c4_20260317_140413.csv réussi.
Récupération de la page 4/5 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=c4&price=min-11000&regdate=2015-max&mileage=min-150000&u_car_brand=CITROEN&seats=999999&u_car_model=CITROEN_C4%2CCITROEN_C4+Aircross%2CCITROEN_C4+Cactus%2CCITROEN_C4+Picasso%2CCITROEN_C4+SpaceTourer%2CCITROEN_C4+X&page=4
  → 35 annonces récupérées (total en mémoire: 140)
Export de 140 annonces vers /home/ubuntu/app/leboncoin_ads_c4_20260317_140413.csv réussi.
Récupération de la page 5/5 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=c4&price=min-11000&regdate=2015-max&mileage=min-150000&u_car_brand=CITROEN&seats=999999&u_car_model=CITROEN_C4%2CCITROEN_C4+Aircross%2CCITROEN_C4+Cactus%2CCITROEN_C4+Picasso%2CCITROEN_C4+SpaceTourer%2CCITROEN_C4+X&page=5
  → 35 annonces récupérées (total en mémoire: 175)
Export de 175 annonces vers /home/ubuntu/app/leboncoin_ads_c4_20260317_140413.csv réussi.

Terminé : 175 annonces au total dans /home/ubuntu/app/leboncoin_ads_c4_20260317_140413.csv
INFO: Model override : c4
INFO: Schéma initialisé dans /home/ubuntu/app/db/lbc.sqlite
════════════════════════════════════════════════════════════
  📦 MIGRATION CSV → SQLite unifié
════════════════════════════════════════════════════════════

📂 leboncoin_ads_c4_20260317_140413.csv
   ✅ 175 lus, 175 insérés, 0 ignorés, 0 erreurs

────────────────────────────────────────────────────────────
  📊 TOTAL : 175 lus, 175 insérés
  💾 Base : /home/ubuntu/app/db/lbc.sqlite
  📌 5684 annonces en base
════════════════════════════════════════════════════════════
INFO: 175 list_id lus dans le CSV.
INFO: 177 annonces actives en base pour citroen c4.
INFO: 2 annonce(s) marquées indisponibles.
════════════════════════════════════════════════════════════
  CHECK DISPONIBILITÉ
  CSV   : leboncoin_ads_c4_20260317_140413.csv
  Brand : citroen  |  Modèle : c4
════════════════════════════════════════════════════════════

  Annonces dans le CSV    : 175
  Annonces actives en DB  : 177
  Absentes du crawl       : 2
  Marquées indisponibles  : 2
════════════════════════════════════════════════════════════

  Vérification :
  SELECT list_id, available, unavailable_detected_at FROM ads WHERE available = 0;
══════════════════════════════════════════════════════════════════════
  🚗 ANALYSEUR LEBONCOIN - Analyses Descriptives Véhicules
══════════════════════════════════════════════════════════════════════
  💾 Base SQLite       : /home/ubuntu/app/db/lbc.sqlite
  📁 Dossier figures  : /home/ubuntu/app/stats/c4/figures
  🔍 Modèle filtré    : c4
  📊 Graphiques       : Non
══════════════════════════════════════════════════════════════════════
📂 Chargement depuis SQLite : /home/ubuntu/app/db/lbc.sqlite
   ✅ 252 annonces chargées (modèle 'c4')

======================================================================
📊 EXPLORATION DES DONNÉES BRUTES
======================================================================

📌 Nombre total d'annonces : 252

📋 Premières lignes (colonnes parsées) :
      list_id                                                                     subject  price_eur  year_model  mileage_km     fuel    brand model owner_type first_publication_date
0  3114906971                                   Citroen c4 spacetourer 1.2 130cv business       9500        2019      114200  essence  citroen    c4        pro    2026-02-17 16:35:09
1  3120070348                   Citroen GRAND C4 PICASSO BLUEHDI 120CH BUSINESS + S&S 98G       9990        2015      149515   diesel  citroen    c4        pro    2025-12-30 11:37:00
2  3150919595             Citroen GRAND C4 SPACETOURER PURETECH 130CH S&S BUSINESS + E6.D      10990        2019      109477  essence  citroen    c4        pro    2026-02-25 04:59:50
3  3067498742  CITROEN C4 SPACETOURER 1.2 130 Business EAT8 7 Places / DISTRIBUTION NEUVE      10990        2019       68000  essence  citroen    c4        pro    2025-10-01 09:38:00
4  3034772801            Citroen C4 Grand Picasso 1.6 BLUEHDI 120 FEEL EAT BVA START-STOP      10490        2017      143000   diesel  citroen    c4        pro    2025-08-04 09:52:00

❓ Valeurs manquantes par colonne clé :
   list_id                        :    0 manquantes (0.0%)
   subject                        :    0 manquantes (0.0%)
   price_eur                      :    0 manquantes (0.0%)
   year_model                     :    0 manquantes (0.0%)
   mileage_km                     :    0 manquantes (0.0%)
   fuel                           :    0 manquantes (0.0%)
   brand                          :    0 manquantes (0.0%)
   model                          :    0 manquantes (0.0%)
   owner_type                     :    0 manquantes (0.0%)
   first_publication_date         :    0 manquantes (0.0%)

📅 Période couverte :
   Première publication : 2023-11-09 04:54:09
   Dernière publication : 2026-03-17 08:27:57
   Durée : 859 jours

👤 Répartition par type de vendeur :
   pro             :  133 (52.8%)
   private         :  119 (47.2%)

⛽ Répartition par carburant :
   diesel               :  141 (56.0%)
   essence              :  111 (44.0%)

🏭 Top 10 marques :
   citroen              :  252 (100.0%)

🧮 Création des colonnes calculées...
   ✅ Colonnes ajoutées : age_years, km_per_year, price_per_km

🧹 Nettoyage des données...

   📊 Rapport de nettoyage :
      prix_aberrants            :    1 lignes supprimées
      km_aberrants              :    0 lignes supprimées
      annee_aberrante           :    0 lignes supprimées
      age_negatif               :    0 lignes supprimées
      ─────────────────────────────────────────────
      Total supprimé          :    1
      Restantes               :  251 / 252
      Pourcentage conservé    : 99.6%

🔍 Détection des outliers (méthode IQR)...
   price_eur            :    7 outliers (2.8%)
      Bornes IQR : [5,938 ; 13,558]
   mileage_km           :   12 outliers (4.8%)
      Bornes IQR : [65,375 ; 186,375]
   age_years            :    0 outliers (0.0%)
      Bornes IQR : [2 ; 14]

   📌 Total d'annonces outliers (au moins 1 variable) : 19 (7.6%)
   ⚠️  Les outliers sont identifiés mais NON supprimés.

======================================================================
📊 RÉSUMÉ APRÈS NETTOYAGE
======================================================================
   Nombre d'annonces restantes : 251
   Dont outliers identifiés    : 19
   Annonces non-outliers       : 232

   Plages de valeurs :
      price_eur            : [     4,500 ;     11,000]  (moy:      9,541)
      mileage_km           : [       186 ;    150,000]  (moy:    120,730)
      year_model           : [     2,015 ;      2,022]  (moy:      2,017)
      age_years            : [         4 ;         11]  (moy:          9)
      km_per_year          : [        17 ;     37,387]  (moy:     14,603)

   💾 251 annonces enrichies persistées dans SQLite

🔎 Détection des annonces suspectes...
   ⚠️  8 signaux de suspicion détectés
      km_trop_bas_essence: 1
      km_trop_bas_diesel: 7
   💾 8 signaux persistés dans SQLite

======================================================================
📊 STATISTIQUES DESCRIPTIVES GLOBALES
======================================================================

📊 Tableau récapitulatif (valeurs brutes) :
   Variable  Count          Mean   Median          Std         Min            Q1            Q3       Max          IQR
  price_eur    251   9540.733068   9990.0  1496.706976 4500.000000   8795.000000  10700.000000  11000.00  1905.000000
 mileage_km    251 120730.007968 130000.0 30224.703471  186.000000 110750.000000 141000.000000 150000.00 30250.000000
 year_model    251   2017.278884   2017.0     1.789389 2015.000000   2016.000000   2019.000000   2022.00     3.000000
  age_years    251      8.721116      9.0     1.789389    4.000000      7.000000     10.000000     11.00     3.000000
km_per_year    251  14603.299078  14210.0  5190.529260   16.909091  11873.015873  16666.666667  37386.75  4793.650794

📊 Tableau formaté :
   Variable Count     Mean   Median       Std   Min       Q1       Q3      Max     IQR
  price_eur   251    9,541    9,990  1,496.71 4,500    8,795   10,700   11,000   1,905
 mileage_km   251  120,730  130,000 30,224.70   186  110,750  141,000  150,000  30,250
 year_model   251    2,017    2,017      1.79 2,015    2,016    2,019    2,022       3
  age_years   251      8.7      9.0      1.79   4.0      7.0     10.0     11.0     3.0
km_per_year   251 14,603.3 14,210.0  5,190.53  16.9 11,873.0 16,666.7 37,386.8 4,793.7

📝 INTERPRÉTATION DES STATISTIQUES :
--------------------------------------------------

   📌 price_eur :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 16%, σ = 1,497)
      → Étendue : [4,500 ; 11,000] (IQR = 1,905)

   📌 mileage_km :
      → Distribution asymétrique GAUCHE (moyenne 120,730 < médiane 130,000)
        Quelques valeurs basses tirent la moyenne vers le bas.
      → Dispersion MODÉRÉE (CV = 25%, σ = 30,225)
      → Étendue : [186 ; 150,000] (IQR = 30,250)

   📌 year_model :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 0%, σ = 2)
      → Étendue : [2,015 ; 2,022] (IQR = 3)

   📌 age_years :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 21%, σ = 2)
      → Étendue : [4 ; 11] (IQR = 3)

   📌 km_per_year :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Dispersion MODÉRÉE (CV = 36%, σ = 5,191)
      → Étendue : [17 ; 37,387] (IQR = 4,794)

======================================================================
📊 DISTRIBUTIONS PAR CATÉGORIES
======================================================================

📊 Prix moyen par année modèle...

   📋 Table : Prix par année modèle
   ---------------------------------------------------------------------------
    Année    Nb   Prix moy   Prix méd   Décote %
   ---------------------------------------------------------------------------
     2015    50      8,901      9,000        N/A
     2016    47      8,987      9,750      -1.0%
     2017    51      9,860     10,450      -9.7%
     2018    35      9,643      9,999      +2.2%
     2019    38     10,021     10,000      -3.9%
     2020    16      9,884     10,495      +1.4%
     2021    12     10,582     10,800      -7.1%
     2022     2     10,495     10,495      +0.8%

   📌 Décote annuelle moyenne : -2.5%

📊 Prix moyen par tranche de kilométrage...

   📋 Table : Prix par tranche de km
   ----------------------------------------------------------------------
        Tranche    Nb   Prix moy   Prix méd      Var %
   ----------------------------------------------------------------------
          0-20k     7      8,527      8,500        N/A
         20-50k     1     10,980     10,980     +28.8%
         50-80k    13     10,113     10,449      -7.9%
        80-120k    67      9,538      9,990      -5.7%
       120-160k   163      9,531      9,990      -0.1%

📊 Prix moyen par âge...

   📋 Table : Prix par âge
   -----------------------------------------------------------------
     Âge    Nb   Prix moy   Décote %
   -----------------------------------------------------------------
       4     2     10,495        N/A
       5    12     10,582      +0.8%
       6    16      9,884      -6.6%
       7    38     10,021      +1.4%
       8    35      9,643      -3.8%
       9    51      9,860      +2.2%
      10    47      8,987      -8.9%
      11    50      8,901      -1.0%

   📌 La décote ralentit significativement à 7 ans

📊 Prix par type de carburant...

   📋 Table : Prix par carburant
   ----------------------------------------------------------------------
         Carburant    Nb   Prix moy   Prix méd
   ----------------------------------------------------------------------
            diesel   140     10,000     10,490
           essence   111      8,962      9,490

   📌 Carburant avec prix médian le plus élevé : diesel (10,490€)
   📌 Carburant avec prix médian le plus bas : essence (9,490€)

📊 Prix par type de vendeur...

   📋 Table : Prix par type de vendeur
   ------------------------------------------------------------
         Type    Nb   Prix moy   Prix méd
   ------------------------------------------------------------
      private   118      9,218      9,850
          pro   133      9,827      9,990

   📌 Test Mann-Whitney (médiane) : p = 0.0219
   ✅ Différence SIGNIFICATIVE (p < 0.05)
   📌 Écart médian Pro - Particulier : +140€

📊 Prix par modèle de véhicule...
   ℹ️ Un seul modèle détecté (c4) — comparaison non applicable

   ✅ Toutes les distributions par catégorie sauvegardées dans /home/ubuntu/app/stats/c4/figures

======================================================================
📊 ANALYSES AVANCÉES - SEUILS PSYCHOLOGIQUES
======================================================================

📊 Analyse des seuils de kilométrage...

   📋 Taux de décote par tranche de 10k km :
   --------------------------------------------------
        60k : décote  -22.9% (n=  5)
        70k : décote    5.4% (n=  7)
        80k : décote   -2.1% (n= 10)
        90k : décote    8.9% (n= 15)
       100k : décote   -8.9% (n= 14)
       110k : décote    7.9% (n= 28)
       120k : décote   -4.7% (n= 37)
       130k : décote    0.5% (n= 51)
       140k : décote    3.1% (n= 68)
       150k : décote   -6.4% (n=  7)

   📌 Seuils où la décote s'accélère (> 8%) :
      → 90k km : 8.9%
   ✅ Sauvegardé : /home/ubuntu/app/stats/c4/figures/seuils_km.png

📊 Analyse des seuils d'âge...

   📋 Taux de décote par année d'âge :
   ---------------------------------------------
     5 ans : décote   -0.8% (n= 12) 🐢 LENTE
     6 ans : décote    6.6% (n= 16)
     7 ans : décote   -1.4% (n= 38) 🐢 LENTE
     8 ans : décote    3.8% (n= 35)
     9 ans : décote   -2.2% (n= 51) 🐢 LENTE
    10 ans : décote    8.9% (n= 47)
    11 ans : décote    1.0% (n= 50) 🐢 LENTE

   📌 Décote lente (< 5% par an) :
      → 5 ans : -0.8%
      → 7 ans : -1.4%
      → 8 ans : 3.8%
      → 9 ans : -2.2%
      → 11 ans : 1.0%
   ✅ Sauvegardé : /home/ubuntu/app/stats/c4/figures/seuils_age.png

======================================================================
📊 IDENTIFICATION DES BONNES AFFAIRES
======================================================================

📊 Construction du modèle de prix attendu...
   📌 Modèle : prix = -257.45 × âge + -0.0001 × km + 11,795
   📌 R² = 0.095
📊 Calcul des écarts de prix...

   📋 Classification des annonces :
      🌟 Excellente affaire        :   30 ( 12.0%)
      👍 Bonne affaire             :   26 ( 10.4%)
      📊 Prix marché               :  123 ( 49.0%)
      💰 Cher                      :   64 ( 25.5%)
      🔴 Très cher                 :    8 (  3.2%)
📊 Graphique : Distribution des écarts de prix...
   ✅ Sauvegardé : /home/ubuntu/app/stats/c4/figures/ecarts_prix.png

   🌟 TOP 10 MEILLEURES AFFAIRES (écart le plus négatif) :
   ====================================================================================================
    1. [3159491862] CITROEN GRANDE C4 PICASSO 1.2 130Ch Exclusive
       Prix:    4,590€ | Attendu:    9,212€ | Écart:  -50.2% | Année: 2016 | Km: 110,000
    2. [3144627553] Grand C4 Picasso
       Prix:    4,500€ | Attendu:    8,953€ | Écart:  -49.7% | Année: 2015 | Km: 140,000
    3. [3148620999] C4 Picasso
       Prix:    4,600€ | Attendu:    8,952€ | Écart:  -48.6% | Année: 2015 | Km: 142,000
    4. [3155010351] C4 Picasso
       Prix:    4,600€ | Attendu:    8,952€ | Écart:  -48.6% | Année: 2015 | Km: 142,000
    5. [3159599228] Vends C4 Grand Picasso II 7 places
       Prix:    6,000€ | Attendu:    9,725€ | Écart:  -38.3% | Année: 2018 | Km: 135,000
    6. [3148926526] C4 grand Picasso 2l hdi 150cv exclusive
       Prix:    5,800€ | Attendu:    9,211€ | Écart:  -37.0% | Année: 2016 | Km: 125,000
    7. [3158296763] C4 grand Picasso 2l hdi 150 cv pack exclusive
       Prix:    5,800€ | Attendu:    9,211€ | Écart:  -37.0% | Année: 2016 | Km: 125,000
    8. [3159003549] Vends CITROEN GRAND C4 PICASSO Intensive
       Prix:    5,900€ | Attendu:    9,210€ | Écart:  -35.9% | Année: 2016 | Km: 138,000
    9. [3162574098] Citroën c4 Picasso 7 places
       Prix:    6,000€ | Attendu:    9,212€ | Écart:  -34.9% | Année: 2016 | Km: 118,000
   10. [3147269001] CITROEN GRAND C4 PICASSO Spacetourer
       Prix:    6,000€ | Attendu:    9,210€ | Écart:  -34.9% | Année: 2016 | Km: 137,500

   🔴 TOP 10 ANNONCES SURÉVALUÉES (écart le plus positif) :
   ====================================================================================================
    1. [3136798926] Grand C4 Picasso 120 HDI
       Prix:   11,000€ | Attendu:    8,954€ | Écart:  +22.8% | Année: 2015 | Km: 116,000
    2. [3155706473] Citroën Grand C4 Picasso 1.6 BlueHdi 115 Intensive
       Prix:   10,995€ | Attendu:    8,955€ | Écart:  +22.8% | Année: 2015 | Km: 113,981
    3. [3017985052] CITROEN C4 PICASSO Grand 1.6 HDi - 120 Intensive 7
       Prix:   10,990€ | Attendu:    8,952€ | Écart:  +22.8% | Année: 2015 | Km: 149,900
    4. [3146221969] Citroen C4 Grand Picasso 7 Places - 2.0 BlueHDi 15
       Prix:   10,990€ | Attendu:    8,952€ | Écart:  +22.8% | Année: 2015 | Km: 142,000
    5. [2934302132] Citroen Grand C4 Picasso PureTech 130ch Confort S&
       Prix:   10,990€ | Attendu:    8,954€ | Écart:  +22.7% | Année: 2015 | Km: 123,901
    6. [3138161286] Citroën C4 PICASSO II Exclusive 2.0 BLUEHDI 150CV 
       Prix:   10,990€ | Attendu:    8,955€ | Écart:  +22.7% | Année: 2015 | Km: 107,256
    7. [3161244489] Citroën Grand C4 Picasso e-HDi 115 Exclusive ETG6
       Prix:   10,980€ | Attendu:    8,959€ | Écart:  +22.6% | Année: 2015 | Km: 47,966
    8. [3160469081] Grand C4 Picasso 7 places
       Prix:   10,800€ | Attendu:    8,957€ | Écart:  +20.6% | Année: 2015 | Km: 78,300
    9. [3049056491] Grand c4 Picasso
       Prix:   10,700€ | Attendu:    8,954€ | Écart:  +19.5% | Année: 2015 | Km: 118,000
   10. [3149154360] Grand c4
       Prix:   11,000€ | Attendu:    9,210€ | Écart:  +19.4% | Année: 2016 | Km: 146,230

🔎 Détection des prix suspects (seuil: -40%)...
   ⚠️  4 annonces avec prix suspect
   💾 4 signaux prix persistés dans SQLite

======================================================================
📊 TABLEAU DE BORD RÉCAPITULATIF
======================================================================

   ┌──────────────────────────────────────────────────┐
   │ Nombre total d'annonces      │                251 │
   │ Prix moyen                   │            9,541 € │
   │ Prix médian                  │            9,990 € │
   │ Km moyen                     │         120,730 km │
   │ Km médian                    │         130,000 km │
   │ Âge moyen                    │            8.7 ans │
   │ Âge médian                   │            9.0 ans │
   │ Km/an moyen                  │       14,603 km/an │
   └──────────────────────────────────────────────────┘

   ✅ Sauvegardé : /home/ubuntu/app/stats/c4/figures/dashboard_kpis.png

======================================================================
💡 INSIGHTS PRINCIPAUX
======================================================================

   🎯 Âge optimal d'achat : ~11 ans (meilleur rapport prix/ancienneté)
   ⚡ Seuil km critique : la décote s'accélère le plus autour de (40000, 60000]
   ⛽ Carburant tenant le mieux sa valeur : diesel (prix/âge le plus élevé)
   👔 Les pros vendent 1.4% plus cher que les particuliers (médiane)
   🔄 Km/an médian : 14,210 km → Profil dominant : 10-15k (Normal)
   🏭 Top 3 marques = 100% du marché : citroen (251)

======================================================================
💡 RECOMMANDATIONS
======================================================================

   🛒 POUR UN ACHETEUR :
   --------------------------------------------------
   • Sweet spot : véhicules de 5-8 ans, 60-120k km
     Prix moyen dans cette fourchette : 9,933€
     (37 annonces disponibles)
   • Prix médian du marché : 9,990€ → cible < 8,991€ pour une bonne affaire
   • Privilégier les annonces de particuliers si budget serré
   • Vérifier le km/an : < 15 000 km/an = usage normal

   💰 POUR UN VENDEUR :
   --------------------------------------------------
   • Prix médian du marché : 9,990€
   • Positionner légèrement sous le marché pour vendre vite (-5% à -10%)
   • Les véhicules < 130,000 km se vendent mieux
   • Mettre en avant un faible km/an si applicable

   🎯 SEGMENTS DE MARCHÉ :
   --------------------------------------------------
   • Budget (63 annonces) :
     Prix : 4,500€ - 8,790€
     Âge moyen : 9.6 ans | Km moyen : 117,882
   • Milieu de gamme (127 annonces) :
     Prix : 8,800€ - 10,700€
     Âge moyen : 8.5 ans | Km moyen : 122,164
   • Premium (61 annonces) :
     Prix : 10,790€ - 11,000€
     Âge moyen : 8.3 ans | Km moyen : 120,686

======================================================================
💾 EXPORT DES RÉSULTATS EN BASE SQLite
======================================================================
   📌 Run #62 créé
   🔍 Modèle : c4
   📎 251 annonces liées au run
   ✅ Stats descriptives : 5 variables
   ✅ Modèle régression : 2 coefficients (R²=0.095)
   ✅ Référentiel prix : 25 segments
   ✅ Classifications deal : 251 annonces

   💾 Tout exporté dans /home/ubuntu/app/db/lbc.sqlite

══════════════════════════════════════════════════════════════════════
  ✅ ANALYSE TERMINÉE en 3.8 secondes
  📊 251 annonces analysées  (run #62)
  🔍 Modèle           : c4
  💾 Base SQLite      : /home/ubuntu/app/db/lbc.sqlite
  📁 Figures          : /home/ubuntu/app/stats/c4/figures
══════════════════════════════════════════════════════════════════════
Récupération de la page 1/4 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=scenic&price=min-11000&regdate=2015-max&mileage=min-150000&seats=999999&u_car_brand=RENAULT&page=1
  → 35 annonces récupérées (total en mémoire: 35)
Export de 35 annonces vers /home/ubuntu/app/leboncoin_ads_scenic_20260317_140444.csv réussi.
Récupération de la page 2/4 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=scenic&price=min-11000&regdate=2015-max&mileage=min-150000&seats=999999&u_car_brand=RENAULT&page=2
  → 35 annonces récupérées (total en mémoire: 70)
Export de 70 annonces vers /home/ubuntu/app/leboncoin_ads_scenic_20260317_140444.csv réussi.
Récupération de la page 3/4 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=scenic&price=min-11000&regdate=2015-max&mileage=min-150000&seats=999999&u_car_brand=RENAULT&page=3
  → 35 annonces récupérées (total en mémoire: 105)
Export de 105 annonces vers /home/ubuntu/app/leboncoin_ads_scenic_20260317_140444.csv réussi.
Récupération de la page 4/4 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=scenic&price=min-11000&regdate=2015-max&mileage=min-150000&seats=999999&u_car_brand=RENAULT&page=4
  → 4 annonces récupérées (total en mémoire: 109)
Export de 109 annonces vers /home/ubuntu/app/leboncoin_ads_scenic_20260317_140444.csv réussi.

Terminé : 109 annonces au total dans /home/ubuntu/app/leboncoin_ads_scenic_20260317_140444.csv
INFO: Model override : scenic
INFO: Schéma initialisé dans /home/ubuntu/app/db/lbc.sqlite
════════════════════════════════════════════════════════════
  📦 MIGRATION CSV → SQLite unifié
════════════════════════════════════════════════════════════

📂 leboncoin_ads_scenic_20260317_140444.csv
   ✅ 109 lus, 109 insérés, 0 ignorés, 0 erreurs

────────────────────────────────────────────────────────────
  📊 TOTAL : 109 lus, 109 insérés
  💾 Base : /home/ubuntu/app/db/lbc.sqlite
  📌 5684 annonces en base
════════════════════════════════════════════════════════════
INFO: 109 list_id lus dans le CSV.
INFO: 109 annonces actives en base pour renault scenic.
INFO: Aucune annonce manquante — toutes présentes dans le crawl.
════════════════════════════════════════════════════════════
  CHECK DISPONIBILITÉ
  CSV   : leboncoin_ads_scenic_20260317_140444.csv
  Brand : renault  |  Modèle : scenic
════════════════════════════════════════════════════════════

  Annonces dans le CSV    : 109
  Annonces actives en DB  : 109
  Absentes du crawl       : 0
  Marquées indisponibles  : 0
════════════════════════════════════════════════════════════
══════════════════════════════════════════════════════════════════════
  🚗 ANALYSEUR LEBONCOIN - Analyses Descriptives Véhicules
══════════════════════════════════════════════════════════════════════
  💾 Base SQLite       : /home/ubuntu/app/db/lbc.sqlite
  📁 Dossier figures  : /home/ubuntu/app/stats/scenic/figures
  🔍 Modèle filtré    : scenic
  📊 Graphiques       : Non
══════════════════════════════════════════════════════════════════════
📂 Chargement depuis SQLite : /home/ubuntu/app/db/lbc.sqlite
   ✅ 167 annonces chargées (modèle 'scenic')

======================================================================
📊 EXPLORATION DES DONNÉES BRUTES
======================================================================

📌 Nombre total d'annonces : 167

📋 Premières lignes (colonnes parsées) :
      list_id                                                                          subject  price_eur  year_model  mileage_km     fuel    brand   model owner_type first_publication_date
0  3135059984                                RENAULT GRAND SCENIC III TCe 130 Energy Life 7 pl       5990        2015      124000  essence  renault  scenic        pro    2026-01-27 11:06:00
1  3042247323                           Renault Grand Scénic IV TCe 130 Energy Life - 7 places       9990        2017      115000  essence  renault  scenic        pro    2025-08-19 18:55:00
2  3050199596                                 Renault Scenic 3 bose phase 2 1,2 tce 130cv 2016       4490        2016      125000  essence  renault  scenic        pro    2026-02-07 06:28:44
3  3137691401                                           Renault Scénic 1.2 tce 130 ch 7 places       6490        2016      123000  essence  renault  scenic        pro    2026-02-01 15:40:56
4  3145167052  Renault Grand Scénic 1.6 DCi 130CH -BOSE-TOIT OUVRANT-7 PLACES-GARANTIE 6 MOIS-       9990        2016      142600   diesel  renault  scenic        pro    2026-02-15 05:20:50

❓ Valeurs manquantes par colonne clé :
   list_id                        :    0 manquantes (0.0%)
   subject                        :    0 manquantes (0.0%)
   price_eur                      :    0 manquantes (0.0%)
   year_model                     :    0 manquantes (0.0%)
   mileage_km                     :    0 manquantes (0.0%)
   fuel                           :    0 manquantes (0.0%)
   brand                          :    0 manquantes (0.0%)
   model                          :    0 manquantes (0.0%)
   owner_type                     :    0 manquantes (0.0%)
   first_publication_date         :    0 manquantes (0.0%)

📅 Période couverte :
   Première publication : 2025-03-05 12:15:00
   Dernière publication : 2026-03-17 02:13:30
   Durée : 376 jours

👤 Répartition par type de vendeur :
   private         :   85 (50.9%)
   pro             :   82 (49.1%)

⛽ Répartition par carburant :
   diesel               :   93 (55.7%)
   essence              :   73 (43.7%)
   autre                :    1 (0.6%)

🏭 Top 10 marques :
   renault              :  167 (100.0%)

🧮 Création des colonnes calculées...
   ✅ Colonnes ajoutées : age_years, km_per_year, price_per_km

🧹 Nettoyage des données...

   📊 Rapport de nettoyage :
      prix_aberrants            :    0 lignes supprimées
      km_aberrants              :    0 lignes supprimées
      annee_aberrante           :    0 lignes supprimées
      age_negatif               :    0 lignes supprimées
      ─────────────────────────────────────────────
      Total supprimé          :    0
      Restantes               :  167 / 167
      Pourcentage conservé    : 100.0%

🔍 Détection des outliers (méthode IQR)...
   price_eur            :    1 outliers (0.6%)
      Bornes IQR : [4,240 ; 14,240]
   mileage_km           :   10 outliers (6.0%)
      Bornes IQR : [78,894 ; 178,710]
   age_years            :    0 outliers (0.0%)
      Bornes IQR : [6 ; 14]

   📌 Total d'annonces outliers (au moins 1 variable) : 11 (6.6%)
   ⚠️  Les outliers sont identifiés mais NON supprimés.

======================================================================
📊 RÉSUMÉ APRÈS NETTOYAGE
======================================================================
   Nombre d'annonces restantes : 167
   Dont outliers identifiés    : 11
   Annonces non-outliers       : 156

   Plages de valeurs :
      price_eur            : [     1,550 ;     11,000]  (moy:      9,153)
      mileage_km           : [     3,000 ;    150,000]  (moy:    124,915)
      year_model           : [     2,015 ;      2,020]  (moy:      2,016)
      age_years            : [         6 ;         11]  (moy:         10)
      km_per_year          : [       273 ;     23,333]  (moy:     12,779)

   💾 167 annonces enrichies persistées dans SQLite

🔎 Détection des annonces suspectes...
   ⚠️  4 signaux de suspicion détectés
      km_trop_bas_essence: 3
      km_trop_bas_diesel: 1
   💾 4 signaux persistés dans SQLite

======================================================================
📊 STATISTIQUES DESCRIPTIVES GLOBALES
======================================================================

📊 Tableau récapitulatif (valeurs brutes) :
   Variable  Count          Mean   Median          Std         Min            Q1       Q3           Max          IQR
  price_eur    167   9153.227545   9500.0  1653.294559 1550.000000   7990.000000  10490.0  11000.000000  2500.000000
 mileage_km    167 124914.976048 131600.0 26157.913719 3000.000000 116325.000000 141279.0 150000.000000 24954.000000
 year_model    167   2016.059880   2016.0     1.027927 2015.000000   2015.000000   2017.0   2020.000000     2.000000
  age_years    167      9.940120     10.0     1.027927    6.000000      9.000000     11.0     11.000000     2.000000
km_per_year    167  12779.371938  12874.9  3249.523724  272.727273  11477.272727  14845.0  23333.333333  3367.727273

📊 Tableau formaté :
   Variable Count     Mean   Median       Std   Min       Q1       Q3      Max     IQR
  price_eur   167    9,153    9,500  1,653.29 1,550    7,990   10,490   11,000   2,500
 mileage_km   167  124,915  131,600 26,157.91 3,000  116,325  141,279  150,000  24,954
 year_model   167    2,016    2,016      1.03 2,015    2,015    2,017    2,020       2
  age_years   167      9.9     10.0      1.03   6.0      9.0     11.0     11.0     2.0
km_per_year   167 12,779.4 12,874.9  3,249.52 272.7 11,477.3 14,845.0 23,333.3 3,367.7

📝 INTERPRÉTATION DES STATISTIQUES :
--------------------------------------------------

   📌 price_eur :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 18%, σ = 1,653)
      → Étendue : [1,550 ; 11,000] (IQR = 2,500)

   📌 mileage_km :
      → Distribution asymétrique GAUCHE (moyenne 124,915 < médiane 131,600)
        Quelques valeurs basses tirent la moyenne vers le bas.
      → Faible dispersion (CV = 21%, σ = 26,158)
      → Étendue : [3,000 ; 150,000] (IQR = 24,954)

   📌 year_model :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 0%, σ = 1)
      → Étendue : [2,015 ; 2,020] (IQR = 2)

   📌 age_years :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 10%, σ = 1)
      → Étendue : [6 ; 11] (IQR = 2)

   📌 km_per_year :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Dispersion MODÉRÉE (CV = 25%, σ = 3,250)
      → Étendue : [273 ; 23,333] (IQR = 3,368)

======================================================================
📊 DISTRIBUTIONS PAR CATÉGORIES
======================================================================

📊 Prix moyen par année modèle...

   📋 Table : Prix par année modèle
   ---------------------------------------------------------------------------
    Année    Nb   Prix moy   Prix méd   Décote %
   ---------------------------------------------------------------------------
     2015    54      8,501      8,750        N/A
     2016    68      8,802      8,990      -3.5%
     2017    34     10,378     10,500     -17.9%
     2018     5     10,856     10,990      -4.6%
     2019     4     10,720     10,945      +1.3%
     2020     2     10,495     10,495      +2.1%

   📌 Décote annuelle moyenne : -4.5%

📊 Prix moyen par tranche de kilométrage...

   📋 Table : Prix par tranche de km
   ----------------------------------------------------------------------
        Tranche    Nb   Prix moy   Prix méd      Var %
   ----------------------------------------------------------------------
          0-20k     3      9,667      9,900        N/A
         20-50k     1      9,990      9,990      +3.3%
         50-80k     6      9,725      9,495      -2.7%
        80-120k    36      9,242      9,990      -5.0%
       120-160k   121      9,079      9,390      -1.8%

📊 Prix moyen par âge...

   📋 Table : Prix par âge
   -----------------------------------------------------------------
     Âge    Nb   Prix moy   Décote %
   -----------------------------------------------------------------
       6     2     10,495        N/A
       7     4     10,720      +2.1%
       8     5     10,856      +1.3%
       9    34     10,378      -4.4%
      10    68      8,802     -15.2%
      11    54      8,501      -3.4%

   📌 La décote ralentit significativement à 11 ans

📊 Prix par type de carburant...

   📋 Table : Prix par carburant
   ----------------------------------------------------------------------
         Carburant    Nb   Prix moy   Prix méd
   ----------------------------------------------------------------------
            diesel    93      9,703      9,950
           essence    73      8,443      8,000

   📌 Carburant avec prix médian le plus élevé : diesel (9,950€)
   📌 Carburant avec prix médian le plus bas : essence (8,000€)

📊 Prix par type de vendeur...

   📋 Table : Prix par type de vendeur
   ------------------------------------------------------------
         Type    Nb   Prix moy   Prix méd
   ------------------------------------------------------------
      private    85      9,034      9,300
          pro    82      9,277      9,895

   📌 Test Mann-Whitney (médiane) : p = 0.3111
   ❌ Différence NON significative (p >= 0.05)
   📌 Écart médian Pro - Particulier : +595€

📊 Prix par modèle de véhicule...
   ℹ️ Un seul modèle détecté (scenic) — comparaison non applicable

   ✅ Toutes les distributions par catégorie sauvegardées dans /home/ubuntu/app/stats/scenic/figures

======================================================================
📊 ANALYSES AVANCÉES - SEUILS PSYCHOLOGIQUES
======================================================================

📊 Analyse des seuils de kilométrage...

   📋 Taux de décote par tranche de 10k km :
   --------------------------------------------------
        70k : décote    2.3% (n=  5)
        80k : décote   13.0% (n=  3) ⚡
        90k : décote   -0.3% (n=  8)
       100k : décote  -10.3% (n=  9)
       110k : décote   -0.3% (n= 16)
       120k : décote    9.2% (n= 34)
       130k : décote   -8.0% (n= 36)
       140k : décote    2.8% (n= 40)
       150k : décote   -4.4% (n= 11)

   📌 Seuils où la décote s'accélère (> 8%) :
      → 80k km : 13.0%
      → 120k km : 9.2%
   ✅ Sauvegardé : /home/ubuntu/app/stats/scenic/figures/seuils_km.png

📊 Analyse des seuils d'âge...

   📋 Taux de décote par année d'âge :
   ---------------------------------------------
     7 ans : décote   -2.1% (n=  4) 🐢 LENTE
     8 ans : décote   -1.3% (n=  5) 🐢 LENTE
     9 ans : décote    4.4% (n= 34)
    10 ans : décote   15.2% (n= 68) ⚡ FORTE
    11 ans : décote    3.4% (n= 54)

   📌 Décote rapide (> 10% par an) :
      → 10 ans : 15.2%

   📌 Décote lente (< 5% par an) :
      → 7 ans : -2.1%
      → 8 ans : -1.3%
      → 9 ans : 4.4%
      → 11 ans : 3.4%
   ✅ Sauvegardé : /home/ubuntu/app/stats/scenic/figures/seuils_age.png

======================================================================
📊 IDENTIFICATION DES BONNES AFFAIRES
======================================================================

📊 Construction du modèle de prix attendu...
   📌 Modèle : prix = -737.62 × âge + -0.0074 × km + 17,409
   📌 R² = 0.205
📊 Calcul des écarts de prix...

   📋 Classification des annonces :
      🌟 Excellente affaire        :   19 ( 11.4%)
      👍 Bonne affaire             :   21 ( 12.6%)
      📊 Prix marché               :   81 ( 48.5%)
      💰 Cher                      :   33 ( 19.8%)
      🔴 Très cher                 :   13 (  7.8%)
📊 Graphique : Distribution des écarts de prix...
   ✅ Sauvegardé : /home/ubuntu/app/stats/scenic/figures/ecarts_prix.png

   🌟 TOP 10 MEILLEURES AFFAIRES (écart le plus négatif) :
   ====================================================================================================
    1. [3138455117] Vente renaul grand scenic HS
       Prix:    1,550€ | Attendu:    8,460€ | Écart:  -81.7% | Année: 2015 | Km: 113,000
    2. [3050199596] Renault Scenic 3 bose phase 2 1,2 tce 130cv 2016
       Prix:    4,490€ | Attendu:    9,108€ | Écart:  -50.7% | Année: 2016 | Km: 125,000
    3. [3158536455] Renault grand scenic 1.2l tce 7 places ct ok
       Prix:    4,500€ | Attendu:    8,371€ | Écart:  -46.2% | Année: 2015 | Km: 125,000
    4. [3125834962] Renault grand Scénic 7pl embrayage neuf 2016. 145M
       Prix:    5,490€ | Attendu:    8,960€ | Écart:  -38.7% | Année: 2016 | Km: 145,000
    5. [3157732381] RENAULT GRAND SCENIC III TCe 130 Energy Bose Editi
       Prix:    6,400€ | Attendu:    9,253€ | Écart:  -30.8% | Année: 2016 | Km: 105,500
    6. [3137691401] Renault Scénic 1.2 tce 130 ch 7 places
       Prix:    6,490€ | Attendu:    9,123€ | Écart:  -28.9% | Année: 2016 | Km: 123,000
    7. [3135059984] RENAULT GRAND SCENIC III TCe 130 Energy Life 7 pl
       Prix:    5,990€ | Attendu:    8,378€ | Écart:  -28.5% | Année: 2015 | Km: 124,000
    8. [3159516384] Renault scenic
       Prix:    5,900€ | Attendu:    8,221€ | Écart:  -28.2% | Année: 2015 | Km: 145,300
    9. [3126782333] Renault grand scenic 1.2l tce 130ch energy limited
       Prix:    6,480€ | Attendu:    8,955€ | Écart:  -27.6% | Année: 2016 | Km: 145,800
   10. [3150143056] RENAULT GRAND SCENIC III TCe 130 Energy Bose Editi
       Prix:    6,700€ | Attendu:    9,253€ | Écart:  -27.6% | Année: 2016 | Km: 105,500

   🔴 TOP 10 ANNONCES SURÉVALUÉES (écart le plus positif) :
   ====================================================================================================
    1. [3156068979] GD SCENIC (3) Limited 7 places + Attelage
       Prix:   10,990€ | Attendu:    8,363€ | Écart:  +31.4% | Année: 2015 | Km: 126,000
    2. [3160492961] Renault Grand Scénic – 7 places – 123 000 km – Éta
       Prix:   11,000€ | Attendu:    8,386€ | Écart:  +31.2% | Année: 2015 | Km: 123,000
    3. [3152975093] Grand scenic 3 phase 3 garantie 12 mois europe boi
       Prix:   10,990€ | Attendu:    8,421€ | Écart:  +30.5% | Année: 2015 | Km: 118,253
    4. [3104644741] Renault grand scenic 7 places 1.5 dci 110 chv
       Prix:   10,980€ | Attendu:    8,443€ | Écart:  +30.0% | Année: 2015 | Km: 115,209
    5. [3157624794] Renault GRAND SCENIC III 1.5 DCI 110CH LIMITED 7 P
       Prix:   10,990€ | Attendu:    8,453€ | Écart:  +30.0% | Année: 2015 | Km: 113,824
    6. [3029298875] Renault Grand Scénic III TCe 130 Energy Bose Editi
       Prix:   10,990€ | Attendu:    8,547€ | Écart:  +28.6% | Année: 2015 | Km: 101,200
    7. [3153677214] RENAULT Grand Scenic III 1.6 DCI 130ch EDITION BOS
       Prix:   10,500€ | Attendu:    8,326€ | Écart:  +26.1% | Année: 2015 | Km: 131,000
    8. [3152867591] Renault Grand Scenic III Bose Phase 2 1.6 dCi 130 
       Prix:   10,480€ | Attendu:    8,474€ | Écart:  +23.7% | Année: 2015 | Km: 111,000
    9. [3140806111] RENAULT Grand Scenic 1.6 DCI 130 CV BOSE GARANTIE 
       Prix:   10,990€ | Attendu:    8,923€ | Écart:  +23.2% | Année: 2016 | Km: 150,000
   10. [3047586026] RENAULT GRAND SCENIC DCI 110 cv Version BOSE 7 PLA
       Prix:   10,990€ | Attendu:    8,939€ | Écart:  +22.9% | Année: 2016 | Km: 147,900

🔎 Détection des prix suspects (seuil: -40%)...
   ⚠️  3 annonces avec prix suspect
   💾 3 signaux prix persistés dans SQLite

======================================================================
📊 TABLEAU DE BORD RÉCAPITULATIF
======================================================================

   ┌──────────────────────────────────────────────────┐
   │ Nombre total d'annonces      │                167 │
   │ Prix moyen                   │            9,153 € │
   │ Prix médian                  │            9,500 € │
   │ Km moyen                     │         124,915 km │
   │ Km médian                    │         131,600 km │
   │ Âge moyen                    │            9.9 ans │
   │ Âge médian                   │           10.0 ans │
   │ Km/an moyen                  │       12,779 km/an │
   └──────────────────────────────────────────────────┘

   ✅ Sauvegardé : /home/ubuntu/app/stats/scenic/figures/dashboard_kpis.png

======================================================================
💡 INSIGHTS PRINCIPAUX
======================================================================

   🎯 Âge optimal d'achat : ~11 ans (meilleur rapport prix/ancienneté)
   ⚡ Seuil km critique : la décote s'accélère le plus autour de (80000, 100000]
   ⛽ Carburant tenant le mieux sa valeur : diesel (prix/âge le plus élevé)
   👔 Les pros vendent 6.4% plus cher que les particuliers (médiane)
   🔄 Km/an médian : 12,875 km → Profil dominant : 10-15k (Normal)
   🏭 Top 3 marques = 100% du marché : renault (167)

======================================================================
💡 RECOMMANDATIONS
======================================================================

   🛒 POUR UN ACHETEUR :
   --------------------------------------------------
   • Sweet spot : véhicules de 5-8 ans, 60-120k km
     Prix moyen dans cette fourchette : 10,330€
     (3 annonces disponibles)
   • Prix médian du marché : 9,500€ → cible < 8,550€ pour une bonne affaire
   • Privilégier les annonces de particuliers si budget serré
   • Vérifier le km/an : < 15 000 km/an = usage normal

   💰 POUR UN VENDEUR :
   --------------------------------------------------
   • Prix médian du marché : 9,500€
   • Positionner légèrement sous le marché pour vendre vite (-5% à -10%)
   • Les véhicules < 131,600 km se vendent mieux
   • Mettre en avant un faible km/an si applicable

   🎯 SEGMENTS DE MARCHÉ :
   --------------------------------------------------
   • Budget (43 annonces) :
     Prix : 1,550€ - 7,990€
     Âge moyen : 10.5 ans | Km moyen : 127,568
   • Milieu de gamme (83 annonces) :
     Prix : 8,000€ - 10,490€
     Âge moyen : 10.0 ans | Km moyen : 121,147
   • Premium (41 annonces) :
     Prix : 10,500€ - 11,000€
     Âge moyen : 9.2 ans | Km moyen : 129,760

======================================================================
💾 EXPORT DES RÉSULTATS EN BASE SQLite
======================================================================
   📌 Run #63 créé
   🔍 Modèle : scenic
   📎 167 annonces liées au run
   ✅ Stats descriptives : 5 variables
   ✅ Modèle régression : 2 coefficients (R²=0.205)
   ✅ Référentiel prix : 15 segments
   ✅ Classifications deal : 167 annonces

   💾 Tout exporté dans /home/ubuntu/app/db/lbc.sqlite

══════════════════════════════════════════════════════════════════════
  ✅ ANALYSE TERMINÉE en 3.7 secondes
  📊 167 annonces analysées  (run #63)
  🔍 Modèle           : scenic
  💾 Base SQLite      : /home/ubuntu/app/db/lbc.sqlite
  📁 Figures          : /home/ubuntu/app/stats/scenic/figures
══════════════════════════════════════════════════════════════════════
Récupération de la page 1/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=1
  → 35 annonces récupérées (total en mémoire: 35)
Export de 35 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 2/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=2
  → 35 annonces récupérées (total en mémoire: 70)
Export de 70 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 3/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=3
  → 35 annonces récupérées (total en mémoire: 105)
Export de 105 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 4/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=4
  → 35 annonces récupérées (total en mémoire: 140)
Export de 140 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 5/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=5
  → 35 annonces récupérées (total en mémoire: 175)
Export de 175 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 6/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=6
  → 35 annonces récupérées (total en mémoire: 210)
Export de 210 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 7/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=7
  → 35 annonces récupérées (total en mémoire: 245)
Export de 245 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 8/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=8
  → 35 annonces récupérées (total en mémoire: 280)
Export de 280 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 9/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=9
  → 35 annonces récupérées (total en mémoire: 315)
Export de 315 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 10/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=10
  → 35 annonces récupérées (total en mémoire: 350)
Export de 350 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 11/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=11
  → 35 annonces récupérées (total en mémoire: 385)
Export de 385 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 12/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=12
  → 35 annonces récupérées (total en mémoire: 420)
Export de 420 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 13/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=13
  → 35 annonces récupérées (total en mémoire: 455)
Export de 455 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 14/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=14
  → 35 annonces récupérées (total en mémoire: 490)
Export de 490 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 15/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=15
  → 35 annonces récupérées (total en mémoire: 525)
Export de 525 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 16/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=16
  → 35 annonces récupérées (total en mémoire: 560)
Export de 560 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 17/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=17
  → 35 annonces récupérées (total en mémoire: 595)
Export de 595 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 18/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=18
  → 35 annonces récupérées (total en mémoire: 630)
Export de 630 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 19/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=19
  → 35 annonces récupérées (total en mémoire: 665)
Export de 665 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 20/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=20
  → 35 annonces récupérées (total en mémoire: 700)
Export de 700 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 21/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=21
  → 35 annonces récupérées (total en mémoire: 735)
Export de 735 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 22/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=22
  → 35 annonces récupérées (total en mémoire: 770)
Export de 770 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 23/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=23
  → 35 annonces récupérées (total en mémoire: 805)
Export de 805 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 24/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=24
  → 35 annonces récupérées (total en mémoire: 840)
Export de 840 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 25/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=25
  → 35 annonces récupérées (total en mémoire: 875)
Export de 875 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 26/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=26
  → 35 annonces récupérées (total en mémoire: 910)
Export de 910 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 27/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=27
  → 35 annonces récupérées (total en mémoire: 945)
Export de 945 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 28/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=28
  → 35 annonces récupérées (total en mémoire: 980)
Export de 980 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 29/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=29
  → 35 annonces récupérées (total en mémoire: 1015)
Export de 1015 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 30/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=30
  → 35 annonces récupérées (total en mémoire: 1050)
Export de 1050 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.
Récupération de la page 31/31 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_brand=PEUGEOT&seats=999999&u_car_model=PEUGEOT_5008&page=31
  → 17 annonces récupérées (total en mémoire: 1067)
Export de 1067 annonces vers /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv réussi.

Terminé : 1067 annonces au total dans /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv
INFO: Model override : 5008
INFO: Schéma initialisé dans /home/ubuntu/app/db/lbc.sqlite
════════════════════════════════════════════════════════════
  📦 MIGRATION CSV → SQLite unifié
════════════════════════════════════════════════════════════

📂 leboncoin_ads_5008_20260317_140459.csv
   ✅ 1067 lus, 1067 insérés, 0 ignorés, 0 erreurs

────────────────────────────────────────────────────────────
  📊 TOTAL : 1067 lus, 1067 insérés
  💾 Base : /home/ubuntu/app/db/lbc.sqlite
  📌 5700 annonces en base
════════════════════════════════════════════════════════════
INFO: 1048 list_id lus dans le CSV.
INFO: 1080 annonces actives en base pour peugeot 5008.
INFO: 32 annonce(s) marquées indisponibles.
════════════════════════════════════════════════════════════
  CHECK DISPONIBILITÉ
  CSV   : leboncoin_ads_5008_20260317_140459.csv
  Brand : peugeot  |  Modèle : 5008
════════════════════════════════════════════════════════════

  Annonces dans le CSV    : 1048
  Annonces actives en DB  : 1080
  Absentes du crawl       : 32
  Marquées indisponibles  : 32
════════════════════════════════════════════════════════════

  Vérification :
  SELECT list_id, available, unavailable_detected_at FROM ads WHERE available = 0;
══════════════════════════════════════════════════════════════════════
  🚗 ANALYSEUR LEBONCOIN - Analyses Descriptives Véhicules
══════════════════════════════════════════════════════════════════════
  💾 Base SQLite       : /home/ubuntu/app/db/lbc.sqlite
  📁 Dossier figures  : /home/ubuntu/app/stats/5008/figures
  🔍 Modèle filtré    : 5008
  📊 Graphiques       : Non
══════════════════════════════════════════════════════════════════════
📂 Chargement depuis SQLite : /home/ubuntu/app/db/lbc.sqlite
   ✅ 1400 annonces chargées (modèle '5008')

======================================================================
📊 EXPLORATION DES DONNÉES BRUTES
======================================================================

📌 Nombre total d'annonces : 1400

📋 Premières lignes (colonnes parsées) :
      list_id                                                        subject  price_eur  year_model  mileage_km     fuel    brand model owner_type first_publication_date
0  3105496930                            Peugeot 5008 1.6 HDI 115 ALLURE 7PL       9990        2016      145460   diesel  peugeot  5008        pro    2025-12-03 14:49:00
1  3150966962                  PEUGEOT 5008 1.6 BlueHDi 120ch SS BVM6 Allure      10990        2015      131475   diesel  peugeot  5008        pro    2026-02-25 09:13:36
2  3076705800          PEUGEOT 5008 1.6 HDi 120ch BVM6 Style - SUIVI COMPLET       8990        2015      142500   diesel  peugeot  5008        pro    2025-10-18 09:09:00
3  3035013147                 Peugeot 5008 1.6 HDI 115CH FAP ALLURE 7 PLACES       8990        2015      144500   diesel  peugeot  5008        pro    2025-08-04 18:43:00
4  3138259074  Peugeot 5008 GENERATION-II 1.2 PURETECH 130 ALLURE START-STOP       5990        2016      105000  essence  peugeot  5008        pro    2026-02-02 14:34:28

❓ Valeurs manquantes par colonne clé :
   list_id                        :    0 manquantes (0.0%)
   subject                        :    0 manquantes (0.0%)
   price_eur                      :    0 manquantes (0.0%)
   year_model                     :    0 manquantes (0.0%)
   mileage_km                     :    0 manquantes (0.0%)
   fuel                           :    0 manquantes (0.0%)
   brand                          :    0 manquantes (0.0%)
   model                          :    0 manquantes (0.0%)
   owner_type                     :    0 manquantes (0.0%)
   first_publication_date         :    0 manquantes (0.0%)

📅 Période couverte :
   Première publication : 2024-06-06 10:10:00
   Dernière publication : 2026-03-17 14:59:12
   Durée : 649 jours

👤 Répartition par type de vendeur :
   private         :  882 (63.0%)
   pro             :  518 (37.0%)

⛽ Répartition par carburant :
   diesel               : 1278 (91.3%)
   essence              :  121 (8.6%)
   hybride              :    1 (0.1%)

🏭 Top 10 marques :
   peugeot              : 1400 (100.0%)

🧮 Création des colonnes calculées...
   ✅ Colonnes ajoutées : age_years, km_per_year, price_per_km

🧹 Nettoyage des données...

   📊 Rapport de nettoyage :
      prix_aberrants            :    2 lignes supprimées
      km_aberrants              :    0 lignes supprimées
      annee_aberrante           :    0 lignes supprimées
      age_negatif               :    0 lignes supprimées
      ─────────────────────────────────────────────
      Total supprimé          :    2
      Restantes               : 1398 / 1400
      Pourcentage conservé    : 99.9%

🔍 Détection des outliers (méthode IQR)...
   price_eur            :    0 outliers (0.0%)
      Bornes IQR : [15 ; 12,775]
   mileage_km           :   29 outliers (2.1%)
      Bornes IQR : [56,416 ; 350,150]
   age_years            :    0 outliers (0.0%)
      Bornes IQR : [5 ; 21]

   📌 Total d'annonces outliers (au moins 1 variable) : 29 (2.1%)
   ⚠️  Les outliers sont identifiés mais NON supprimés.

======================================================================
📊 RÉSUMÉ APRÈS NETTOYAGE
======================================================================
   Nombre d'annonces restantes : 1398
   Dont outliers identifiés    : 29
   Annonces non-outliers       : 1369

   Plages de valeurs :
      price_eur            : [       700 ;     11,000]  (moy:      6,388)
      mileage_km           : [         1 ;    410,000]  (moy:    204,091)
      year_model           : [     2,009 ;      2,021]  (moy:      2,013)
      age_years            : [         5 ;         17]  (moy:         13)
      km_per_year          : [         0 ;     53,776]  (moy:     16,138)

   💾 1398 annonces enrichies persistées dans SQLite

🔎 Détection des annonces suspectes...
   ⚠️  17 signaux de suspicion détectés
      km_trop_bas_essence: 1
      km_trop_bas_diesel: 16
   💾 17 signaux persistés dans SQLite

======================================================================
📊 STATISTIQUES DESCRIPTIVES GLOBALES
======================================================================

📊 Tableau récapitulatif (valeurs brutes) :
   Variable  Count          Mean   Median          Std         Min            Q1            Q3           Max          IQR
  price_eur   1398   6387.920601   5990.0  2298.372807  700.000000   4800.000000   7990.000000  11000.000000  3190.000000
 mileage_km   1398 204090.746066 203895.0 57420.937586    1.000000 166566.500000 240000.000000 410000.000000 73433.500000
 year_model   1398   2013.029328   2013.0     2.493771 2009.000000   2011.000000   2015.000000   2021.000000     4.000000
  age_years   1398     12.970672     13.0     2.493771    5.000000     11.000000     15.000000     17.000000     4.000000
km_per_year   1398  16138.339595  15625.0  5024.048306    0.111111  13090.909091  18581.602564  53776.166667  5490.693473

📊 Tableau formaté :
   Variable Count     Mean   Median       Std   Min       Q1       Q3      Max     IQR
  price_eur 1,398    6,388    5,990  2,298.37   700    4,800    7,990   11,000   3,190
 mileage_km 1,398  204,091  203,895 57,420.94     1  166,566  240,000  410,000  73,434
 year_model 1,398    2,013    2,013      2.49 2,009    2,011    2,015    2,021       4
  age_years 1,398     13.0     13.0      2.49   5.0     11.0     15.0     17.0     4.0
km_per_year 1,398 16,138.3 15,625.0  5,024.05   0.1 13,090.9 18,581.6 53,776.2 5,490.7

📝 INTERPRÉTATION DES STATISTIQUES :
--------------------------------------------------

   📌 price_eur :
      → Distribution asymétrique DROITE (moyenne 6,388 > médiane 5,990)
        Quelques valeurs élevées tirent la moyenne vers le haut.
      → Dispersion MODÉRÉE (CV = 36%, σ = 2,298)
      → Étendue : [700 ; 11,000] (IQR = 3,190)

   📌 mileage_km :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Dispersion MODÉRÉE (CV = 28%, σ = 57,421)
      → Étendue : [1 ; 410,000] (IQR = 73,434)

   📌 year_model :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 0%, σ = 2)
      → Étendue : [2,009 ; 2,021] (IQR = 4)

   📌 age_years :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 19%, σ = 2)
      → Étendue : [5 ; 17] (IQR = 4)

   📌 km_per_year :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Dispersion MODÉRÉE (CV = 31%, σ = 5,024)
      → Étendue : [0 ; 53,776] (IQR = 5,491)

======================================================================
📊 DISTRIBUTIONS PAR CATÉGORIES
======================================================================

📊 Prix moyen par année modèle...

   📋 Table : Prix par année modèle
   ---------------------------------------------------------------------------
    Année    Nb   Prix moy   Prix méd   Décote %
   ---------------------------------------------------------------------------
     2009    24      4,792      4,740        N/A
     2010   206      4,711      4,600      +1.7%
     2011   243      4,952      5,000      -5.1%
     2012   217      5,597      5,500     -13.0%
     2013   173      5,899      5,600      -5.4%
     2014   139      7,049      7,000     -19.5%
     2015   124      7,958      7,990     -12.9%
     2016   145      8,087      7,990      -1.6%
     2017    52      9,707     10,000     -20.0%
     2018    37     10,186     10,600      -4.9%
     2019    24     10,485     10,495      -2.9%
     2020    13      9,535     10,000      +9.1%

   📌 Décote annuelle moyenne : -6.8%

📊 Prix moyen par tranche de kilométrage...

   📋 Table : Prix par tranche de km
   ----------------------------------------------------------------------
        Tranche    Nb   Prix moy   Prix méd      Var %
   ----------------------------------------------------------------------
          0-20k    11      5,923      4,800        N/A
         20-50k     5      5,618      5,000      -5.1%
         50-80k     6      9,428      9,725     +67.8%
        80-120k    47      8,925      9,490      -5.3%
       120-160k   222      8,563      8,990      -4.1%
       160-200k   363      7,137      6,999     -16.7%
          200k+   744      5,201      4,990     -27.1%

📊 Prix moyen par âge...

   📋 Table : Prix par âge
   -----------------------------------------------------------------
     Âge    Nb   Prix moy   Décote %
   -----------------------------------------------------------------
       6    13      9,535        N/A
       7    24     10,485     +10.0%
       8    37     10,186      -2.9%
       9    52      9,707      -4.7%
      10   145      8,087     -16.7%
      11   124      7,958      -1.6%
      12   139      7,049     -11.4%
      13   173      5,899     -16.3%
      14   217      5,597      -5.1%
      15   243      4,952     -11.5%
      16   206      4,711      -4.9%
      17    24      4,792      +1.7%

   📌 La décote ralentit significativement à 8 ans

📊 Prix par type de carburant...

   📋 Table : Prix par carburant
   ----------------------------------------------------------------------
         Carburant    Nb   Prix moy   Prix méd
   ----------------------------------------------------------------------
            diesel  1277      6,229      5,990
           essence   120      8,045      8,800

   📌 Carburant avec prix médian le plus élevé : essence (8,800€)
   📌 Carburant avec prix médian le plus bas : diesel (5,990€)

📊 Prix par type de vendeur...

   📋 Table : Prix par type de vendeur
   ------------------------------------------------------------
         Type    Nb   Prix moy   Prix méd
   ------------------------------------------------------------
      private   881      5,938      5,500
          pro   517      7,154      6,890

   📌 Test Mann-Whitney (médiane) : p = 0.0000
   ✅ Différence SIGNIFICATIVE (p < 0.05)
   📌 Écart médian Pro - Particulier : +1,390€

📊 Prix par modèle de véhicule...
   ℹ️ Un seul modèle détecté (5008) — comparaison non applicable

   ✅ Toutes les distributions par catégorie sauvegardées dans /home/ubuntu/app/stats/5008/figures

======================================================================
📊 ANALYSES AVANCÉES - SEUILS PSYCHOLOGIQUES
======================================================================

📊 Analyse des seuils de kilométrage...

   📋 Taux de décote par tranche de 10k km :
   --------------------------------------------------
        20k : décote   20.5% (n=  2) ⚡
        30k : décote   11.5% (n=  2) ⚡
        50k : décote -123.4% (n=  2)
        60k : décote  -13.1% (n=  2)
        70k : décote   25.0% (n=  2) ⚡
        80k : décote   -9.5% (n=  4)
        90k : décote   -5.1% (n= 10)
       100k : décote   -0.5% (n= 14)
       110k : décote    9.0% (n= 19)
       120k : décote  -10.9% (n= 32)
       130k : décote   -0.3% (n= 49)
       140k : décote   13.0% (n= 65) ⚡
       150k : décote    3.1% (n= 76)
       160k : décote    0.8% (n= 87)
       170k : décote    5.5% (n= 98)
       180k : décote   10.3% (n= 86) ⚡
       190k : décote    2.5% (n= 92)
       200k : décote    3.2% (n= 97)
       210k : décote    3.5% (n=107)
       220k : décote    5.5% (n=101)
       230k : décote    8.2% (n= 78)
       240k : décote   -1.8% (n= 91)
       250k : décote    6.7% (n= 56)
       260k : décote   11.9% (n= 55) ⚡
       270k : décote   11.0% (n= 38) ⚡
       280k : décote  -24.0% (n= 23)
       290k : décote   28.0% (n= 24) ⚡
      300k+ : décote    3.0% (n= 74)

   📌 Seuils où la décote s'accélère (> 8%) :
      → 20k km : 20.5%
      → 30k km : 11.5%
      → 70k km : 25.0%
      → 110k km : 9.0%
      → 140k km : 13.0%
      → 180k km : 10.3%
      → 230k km : 8.2%
      → 260k km : 11.9%
      → 270k km : 11.0%
      → 290k km : 28.0%
   ✅ Sauvegardé : /home/ubuntu/app/stats/5008/figures/seuils_km.png

📊 Analyse des seuils d'âge...

   📋 Taux de décote par année d'âge :
   ---------------------------------------------
     7 ans : décote  -10.0% (n= 24) 🐢 LENTE
     8 ans : décote    2.9% (n= 37) 🐢 LENTE
     9 ans : décote    4.7% (n= 52)
    10 ans : décote   16.7% (n=145) ⚡ FORTE
    11 ans : décote    1.6% (n=124) 🐢 LENTE
    12 ans : décote   11.4% (n=139)
    13 ans : décote   16.3% (n=173) ⚡ FORTE
    14 ans : décote    5.1% (n=217)
    15 ans : décote   11.5% (n=243)
    16 ans : décote    4.9% (n=206)
    17 ans : décote   -1.7% (n= 24) 🐢 LENTE

   📌 Décote rapide (> 10% par an) :
      → 10 ans : 16.7%
      → 12 ans : 11.4%
      → 13 ans : 16.3%
      → 15 ans : 11.5%

   📌 Décote lente (< 5% par an) :
      → 7 ans : -10.0%
      → 8 ans : 2.9%
      → 9 ans : 4.7%
      → 11 ans : 1.6%
      → 16 ans : 4.9%
      → 17 ans : -1.7%
   ✅ Sauvegardé : /home/ubuntu/app/stats/5008/figures/seuils_age.png

======================================================================
📊 IDENTIFICATION DES BONNES AFFAIRES
======================================================================

📊 Construction du modèle de prix attendu...
   📌 Modèle : prix = -506.35 × âge + -0.0174 × km + 16,512
   📌 R² = 0.653
📊 Calcul des écarts de prix...

   📋 Classification des annonces :
      🌟 Excellente affaire        :  199 ( 14.2%)
      👍 Bonne affaire             :  199 ( 14.2%)
      📊 Prix marché               :  572 ( 40.9%)
      💰 Cher                      :  201 ( 14.4%)
      🔴 Très cher                 :  227 ( 16.2%)
📊 Graphique : Distribution des écarts de prix...
   ✅ Sauvegardé : /home/ubuntu/app/stats/5008/figures/ecarts_prix.png

   🌟 TOP 10 MEILLEURES AFFAIRES (écart le plus négatif) :
   ====================================================================================================
    1. [3163345953] Peugeot 5008 1.6, 120cv B.hdi
       Prix:    1,000€ | Attendu:    5,731€ | Écart:  -82.6% | Année: 2014 | Km: 270,000
    2. [3098662962] Peugeot 5008 hdi
       Prix:    1,900€ | Attendu:    8,732€ | Écart:  -78.2% | Année: 2016 | Km: 155,900
    3. [3161987772] 5008 7 places
       Prix:    1,000€ | Attendu:    4,212€ | Écart:  -76.3% | Année: 2011 | Km: 270,000
    4. [3154103448] Vend Peugeot 5008 dans l etat
       Prix:    1,000€ | Attendu:    4,141€ | Écart:  -75.9% | Année: 2010 | Km: 245,000
    5. [3145452074] Peugeot 5008
       Prix:    1,000€ | Attendu:    3,725€ | Écart:  -73.2% | Année: 2012 | Km: 327,000
    6. [3151017355] Vends Peugeot 5008 a spécialiste
       Prix:    1,500€ | Attendu:    5,415€ | Écart:  -72.3% | Année: 2012 | Km: 230,000
    7. [3154289763] 5008 essence sur l'état
       Prix:    1,700€ | Attendu:    6,135€ | Écart:  -72.3% | Année: 2011 | Km: 159,660
    8. [3162529124] Peugeot 5008
       Prix:    1,500€ | Attendu:    5,155€ | Écart:  -70.9% | Année: 2013 | Km: 274,000
    9. [3162058891] Peugeot 5008 1.6 HDi 112 2011 275k km – À réparer
       Prix:    1,300€ | Attendu:    4,125€ | Écart:  -68.5% | Année: 2011 | Km: 275,000
   10. [3142082258] 5008
       Prix:    1,200€ | Attendu:    3,799€ | Écart:  -68.4% | Année: 2012 | Km: 322,766

   🔴 TOP 10 ANNONCES SURÉVALUÉES (écart le plus positif) :
   ====================================================================================================
    1. [3146000438] 5008 hdi
       Prix:    7,500€ | Attendu:    3,827€ | Écart:  +96.0% | Année: 2009 | Km: 234,000
    2. [3152738100] Peugeot 5008 2l hdi 150cv
       Prix:    8,000€ | Attendu:    4,444€ | Écart:  +80.0% | Année: 2010 | Km: 227,600
    3. [3126969597] Peugeot 5008
       Prix:    4,200€ | Attendu:    2,415€ | Écart:  +73.9% | Année: 2009 | Km: 315,000
    4. [3126598226] Peugeot 5008 1.6 hdi fap confort pack 7pl
       Prix:    7,990€ | Attendu:    4,638€ | Écart:  +72.3% | Année: 2010 | Km: 216,500
    5. [3157618424] Peugeot 5008
       Prix:    3,500€ | Attendu:    2,050€ | Écart:  +70.7% | Année: 2010 | Km: 365,000
    6. [3155918327] Peugeot 5008
       Prix:    6,500€ | Attendu:    3,827€ | Écart:  +69.9% | Année: 2009 | Km: 234,000
    7. [3147840406] Peugeot 5008 1.6 hdi FAP Premium 7pls
       Prix:    6,990€ | Attendu:    4,124€ | Écart:  +69.5% | Année: 2010 | Km: 246,000
    8. [3159646980] PEUGEOT 5008 2.0 HDI 163cv
       Prix:    7,500€ | Attendu:    4,457€ | Écart:  +68.3% | Année: 2012 | Km: 285,000
    9. [3129737643] 🚗 Peugeot 5008 1.6 HDi 110 Premium – 7 places
       Prix:   10,000€ | Attendu:    6,006€ | Écart:  +66.5% | Année: 2010 | Km: 138,000
   10. [3155390540] 5008 1,6 hdi 110ch business pack
       Prix:    5,000€ | Attendu:    3,079€ | Écart:  +62.4% | Année: 2011 | Km: 335,000

🔎 Détection des prix suspects (seuil: -40%)...
   ⚠️  61 annonces avec prix suspect
   💾 61 signaux prix persistés dans SQLite

======================================================================
📊 TABLEAU DE BORD RÉCAPITULATIF
======================================================================

   ┌──────────────────────────────────────────────────┐
   │ Nombre total d'annonces      │              1,398 │
   │ Prix moyen                   │            6,388 € │
   │ Prix médian                  │            5,990 € │
   │ Km moyen                     │         204,091 km │
   │ Km médian                    │         203,895 km │
   │ Âge moyen                    │           13.0 ans │
   │ Âge médian                   │           13.0 ans │
   │ Km/an moyen                  │       16,138 km/an │
   └──────────────────────────────────────────────────┘

   ✅ Sauvegardé : /home/ubuntu/app/stats/5008/figures/dashboard_kpis.png

======================================================================
💡 INSIGHTS PRINCIPAUX
======================================================================

   🎯 Âge optimal d'achat : ~17 ans (meilleur rapport prix/ancienneté)
   ⚡ Seuil km critique : la décote s'accélère le plus autour de (40000, 60000]
   ⛽ Carburant tenant le mieux sa valeur : essence (prix/âge le plus élevé)
   👔 Les pros vendent 25.3% plus cher que les particuliers (médiane)
   🔄 Km/an médian : 15,625 km → Profil dominant : 15-25k (Intensif)
   🏭 Top 3 marques = 100% du marché : peugeot (1398)

======================================================================
💡 RECOMMANDATIONS
======================================================================

   🛒 POUR UN ACHETEUR :
   --------------------------------------------------
   • Sweet spot : véhicules de 5-8 ans, 60-120k km
     Prix moyen dans cette fourchette : 10,194€
     (7 annonces disponibles)
   • Prix médian du marché : 5,990€ → cible < 5,391€ pour une bonne affaire
   • Privilégier les annonces de particuliers si budget serré
   • Vérifier le km/an : < 15 000 km/an = usage normal

   💰 POUR UN VENDEUR :
   --------------------------------------------------
   • Prix médian du marché : 5,990€
   • Positionner légèrement sous le marché pour vendre vite (-5% à -10%)
   • Les véhicules < 203,895 km se vendent mieux
   • Mettre en avant un faible km/an si applicable

   🎯 SEGMENTS DE MARCHÉ :
   --------------------------------------------------
   • Budget (366 annonces) :
     Prix : 700€ - 4,800€
     Âge moyen : 14.8 ans | Km moyen : 252,858
   • Milieu de gamme (713 annonces) :
     Prix : 4,850€ - 7,990€
     Âge moyen : 13.3 ans | Km moyen : 199,978
   • Premium (319 annonces) :
     Prix : 7,997€ - 11,000€
     Âge moyen : 10.1 ans | Km moyen : 157,331

======================================================================
💾 EXPORT DES RÉSULTATS EN BASE SQLite
======================================================================
   📌 Run #64 créé
   🔍 Modèle : 5008
   📎 1398 annonces liées au run
   ✅ Stats descriptives : 5 variables
   ✅ Modèle régression : 2 coefficients (R²=0.653)
   ✅ Référentiel prix : 61 segments
   ✅ Classifications deal : 1398 annonces

   💾 Tout exporté dans /home/ubuntu/app/db/lbc.sqlite

══════════════════════════════════════════════════════════════════════
  ✅ ANALYSE TERMINÉE en 4.2 secondes
  📊 1398 annonces analysées  (run #64)
  🔍 Modèle           : 5008
  💾 Base SQLite      : /home/ubuntu/app/db/lbc.sqlite
  📁 Figures          : /home/ubuntu/app/stats/5008/figures
══════════════════════════════════════════════════════════════════════
Récupération de la page 1/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=1
  → 35 annonces récupérées (total en mémoire: 35)
Export de 35 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 2/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=2
  → 35 annonces récupérées (total en mémoire: 70)
Export de 70 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 3/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=3
  → 35 annonces récupérées (total en mémoire: 105)
Export de 105 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 4/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=4
  → 35 annonces récupérées (total en mémoire: 140)
Export de 140 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 5/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=5
  → 35 annonces récupérées (total en mémoire: 175)
Export de 175 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 6/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=6
  → 35 annonces récupérées (total en mémoire: 210)
Export de 210 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 7/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=7
  → 35 annonces récupérées (total en mémoire: 245)
Export de 245 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 8/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=8
  → 35 annonces récupérées (total en mémoire: 280)
Export de 280 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 9/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=9
  → 35 annonces récupérées (total en mémoire: 315)
Export de 315 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 10/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=10
  → 35 annonces récupérées (total en mémoire: 350)
Export de 350 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 11/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=11
  → 35 annonces récupérées (total en mémoire: 385)
Export de 385 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 12/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=12
  → 35 annonces récupérées (total en mémoire: 420)
Export de 420 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 13/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=13
  → 35 annonces récupérées (total en mémoire: 455)
Export de 455 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 14/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=14
  → 35 annonces récupérées (total en mémoire: 490)
Export de 490 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 15/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=15
  → 35 annonces récupérées (total en mémoire: 525)
Export de 525 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 16/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=16
  → 35 annonces récupérées (total en mémoire: 560)
Export de 560 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 17/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=17
  → 35 annonces récupérées (total en mémoire: 595)
Export de 595 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 18/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=18
  → 35 annonces récupérées (total en mémoire: 630)
Export de 630 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 19/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=19
  → 35 annonces récupérées (total en mémoire: 665)
Export de 665 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 20/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=20
  → 35 annonces récupérées (total en mémoire: 700)
Export de 700 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 21/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=21
  → 35 annonces récupérées (total en mémoire: 735)
Export de 735 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 22/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=22
  → 35 annonces récupérées (total en mémoire: 770)
Export de 770 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 23/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=23
  → 35 annonces récupérées (total en mémoire: 805)
Export de 805 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 24/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=24
  → 35 annonces récupérées (total en mémoire: 840)
Export de 840 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 25/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=25
  → 35 annonces récupérées (total en mémoire: 875)
Export de 875 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 26/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=26
  → 35 annonces récupérées (total en mémoire: 910)
Export de 910 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 27/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=27
  → 35 annonces récupérées (total en mémoire: 945)
Export de 945 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 28/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=28
  → 35 annonces récupérées (total en mémoire: 980)
Export de 980 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 29/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=29
  → 35 annonces récupérées (total en mémoire: 1015)
Export de 1015 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 30/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=30
  → 35 annonces récupérées (total en mémoire: 1050)
Export de 1050 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 31/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=31
  → 35 annonces récupérées (total en mémoire: 1085)
Export de 1085 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 32/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=32
  → 35 annonces récupérées (total en mémoire: 1120)
Export de 1120 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 33/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=33
  → 35 annonces récupérées (total en mémoire: 1155)
Export de 1155 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 34/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=34
  → 35 annonces récupérées (total en mémoire: 1190)
Export de 1190 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 35/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=35
  → 35 annonces récupérées (total en mémoire: 1225)
Export de 1225 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 36/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=36
  → 35 annonces récupérées (total en mémoire: 1260)
Export de 1260 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 37/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=37
  → 35 annonces récupérées (total en mémoire: 1295)
Export de 1295 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 38/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=38
  → 35 annonces récupérées (total en mémoire: 1330)
Export de 1330 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 39/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=39
  → 35 annonces récupérées (total en mémoire: 1365)
Export de 1365 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 40/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=40
  → 35 annonces récupérées (total en mémoire: 1400)
Export de 1400 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 41/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=41
  → 35 annonces récupérées (total en mémoire: 1435)
Export de 1435 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 42/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=42
  → 35 annonces récupérées (total en mémoire: 1470)
Export de 1470 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 43/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=43
  → 31 annonces récupérées (total en mémoire: 1501)
Export de 1501 annonces vers /home/ubuntu/app/leboncoin_ads_fiesta_20260317_140641.csv réussi.
Récupération de la page 44/44 avec l'URL: https://www.leboncoin.fr/recherche?category=2&text=ford+fiesta&price=3000-10000&regdate=2014-max&u_car_brand=FORD&fuel=1%2C2&u_car_model=FORD_Fiesta&page=44
Erreur lors de l'appel à l'API: 404 Client Error: Not Found for url: https://piloterr.com/api/v2/leboncoin/search?query=https%3A%2F%2Fwww.leboncoin.fr%2Frecherche%3Fcategory%3D2%26text%3Dford%2Bfiesta%26price%3D3000-10000%26regdate%3D2014-max%26u_car_brand%3DFORD%26fuel%3D1%252C2%26u_car_model%3DFORD_Fiesta%26page%3D44
Récupération de la page 1/3 avec l'URL: https://www.leboncoin.fr/recherche?category=5&text=nv200&u_utility_brand=NISSAN&u_utility_model=NISSAN_NV200&fuel=2&page=1
  → 35 annonces récupérées (total en mémoire: 35)
Export de 35 annonces vers /home/ubuntu/app/leboncoin_ads_nv200_20260317_140907.csv réussi.
Récupération de la page 2/3 avec l'URL: https://www.leboncoin.fr/recherche?category=5&text=nv200&u_utility_brand=NISSAN&u_utility_model=NISSAN_NV200&fuel=2&page=2
  → 35 annonces récupérées (total en mémoire: 70)
Export de 70 annonces vers /home/ubuntu/app/leboncoin_ads_nv200_20260317_140907.csv réussi.
Récupération de la page 3/3 avec l'URL: https://www.leboncoin.fr/recherche?category=5&text=nv200&u_utility_brand=NISSAN&u_utility_model=NISSAN_NV200&fuel=2&page=3
  → 27 annonces récupérées (total en mémoire: 97)
Export de 97 annonces vers /home/ubuntu/app/leboncoin_ads_nv200_20260317_140907.csv réussi.

Terminé : 97 annonces au total dans /home/ubuntu/app/leboncoin_ads_nv200_20260317_140907.csv
INFO: Model override : nv200
INFO: Schéma initialisé dans /home/ubuntu/app/db/lbc.sqlite
════════════════════════════════════════════════════════════
  📦 MIGRATION CSV → SQLite unifié
════════════════════════════════════════════════════════════

📂 leboncoin_ads_nv200_20260317_140907.csv
   ✅ 97 lus, 97 insérés, 0 ignorés, 0 erreurs

────────────────────────────────────────────────────────────
  📊 TOTAL : 97 lus, 97 insérés
  💾 Base : /home/ubuntu/app/db/lbc.sqlite
  📌 5777 annonces en base
════════════════════════════════════════════════════════════
INFO: 97 list_id lus dans le CSV.
INFO: 161 annonces actives en base pour nissan nv200.
INFO: 64 annonce(s) marquées indisponibles.
════════════════════════════════════════════════════════════
  CHECK DISPONIBILITÉ
  CSV   : leboncoin_ads_nv200_20260317_140907.csv
  Brand : nissan  |  Modèle : nv200
════════════════════════════════════════════════════════════

  Annonces dans le CSV    : 97
  Annonces actives en DB  : 161
  Absentes du crawl       : 64
  Marquées indisponibles  : 64
════════════════════════════════════════════════════════════

  Vérification :
  SELECT list_id, available, unavailable_detected_at FROM ads WHERE available = 0;
══════════════════════════════════════════════════════════════════════
  🚗 ANALYSEUR LEBONCOIN - Analyses Descriptives Véhicules
══════════════════════════════════════════════════════════════════════
  💾 Base SQLite       : /home/ubuntu/app/db/lbc.sqlite
  📁 Dossier figures  : /home/ubuntu/app/stats/nv200/figures
  🔍 Modèle filtré    : nv200
  📊 Graphiques       : Non
══════════════════════════════════════════════════════════════════════
📂 Chargement depuis SQLite : /home/ubuntu/app/db/lbc.sqlite
   ✅ 161 annonces chargées (modèle 'nv200')

======================================================================
📊 EXPLORATION DES DONNÉES BRUTES
======================================================================

📌 Nombre total d'annonces : 161

📋 Premières lignes (colonnes parsées) :
      list_id                                                  subject  price_eur  year_model  mileage_km    fuel   brand  model owner_type first_publication_date
0  2859214095                            Nissan NV200 N CONNNECTA 90CV      12990        2017       94500  diesel  nissan  nv200        pro    2024-10-05 17:02:00
1  3139983877                        Nissan NV200 1,5L dCi 90ch Acenta      11990        2013      106800  diesel  nissan  nv200        pro    2026-02-05 16:52:21
2  3083668151                    Nissan NV200 1.5 DCI 90CH VAN AMENAGE      14999        2014      121041  diesel  nissan  nv200        pro    2025-10-29 21:10:00
3  3131716141                      Nissan NV200 1.5 DCI 110 N-CONNECTA       9890        2016      194000  diesel  nissan  nv200        pro    2026-01-21 20:45:17
4  3131492774  Nissan NV200 Fourgon 1.5 dCi 110cv 1ère Main N-Connecta       8990        2017      187000  diesel  nissan  nv200        pro    2026-01-21 14:43:24

❓ Valeurs manquantes par colonne clé :
   list_id                        :    0 manquantes (0.0%)
   subject                        :    0 manquantes (0.0%)
   price_eur                      :    0 manquantes (0.0%)
   year_model                     :    0 manquantes (0.0%)
   mileage_km                     :    0 manquantes (0.0%)
   fuel                           :    0 manquantes (0.0%)
   brand                          :    0 manquantes (0.0%)
   model                          :    0 manquantes (0.0%)
   owner_type                     :    0 manquantes (0.0%)
   first_publication_date         :    0 manquantes (0.0%)

📅 Période couverte :
   Première publication : 2024-09-27 22:07:00
   Dernière publication : 2026-03-17 12:12:12
   Durée : 535 jours

👤 Répartition par type de vendeur :
   private         :  110 (68.3%)
   pro             :   51 (31.7%)

⛽ Répartition par carburant :
   diesel               :  161 (100.0%)

🏭 Top 10 marques :
   nissan               :  161 (100.0%)

🧮 Création des colonnes calculées...
   ✅ Colonnes ajoutées : age_years, km_per_year, price_per_km

🧹 Nettoyage des données...

   📊 Rapport de nettoyage :
      prix_aberrants            :    0 lignes supprimées
      km_aberrants              :    0 lignes supprimées
      annee_aberrante           :    0 lignes supprimées
      age_negatif               :    0 lignes supprimées
      ─────────────────────────────────────────────
      Total supprimé          :    0
      Restantes               :  161 / 161
      Pourcentage conservé    : 100.0%

🔍 Détection des outliers (méthode IQR)...
   price_eur            :    0 outliers (0.0%)
      Bornes IQR : [-3,500 ; 20,500]
   mileage_km           :    1 outliers (0.6%)
      Bornes IQR : [-43,305 ; 368,191]
   age_years            :    0 outliers (0.0%)
      Bornes IQR : [3 ; 19]

   📌 Total d'annonces outliers (au moins 1 variable) : 1 (0.6%)
   ⚠️  Les outliers sont identifiés mais NON supprimés.

======================================================================
📊 RÉSUMÉ APRÈS NETTOYAGE
======================================================================
   Nombre d'annonces restantes : 161
   Dont outliers identifiés    : 1
   Annonces non-outliers       : 160

   Plages de valeurs :
      price_eur            : [     2,000 ;     19,990]  (moy:      8,785)
      mileage_km           : [         1 ;    420,000]  (moy:    164,384)
      year_model           : [     2,009 ;      2,019]  (moy:      2,015)
      age_years            : [         7 ;         17]  (moy:         11)
      km_per_year          : [         0 ;     30,000]  (moy:     14,991)

   💾 161 annonces enrichies persistées dans SQLite

🔎 Détection des annonces suspectes...
   ⚠️  4 signaux de suspicion détectés
      km_trop_bas_diesel: 4
   💾 4 signaux persistés dans SQLite

======================================================================
📊 STATISTIQUES DESCRIPTIVES GLOBALES
======================================================================

📊 Tableau récapitulatif (valeurs brutes) :
   Variable  Count          Mean   Median          Std         Min       Q1            Q3      Max           IQR
  price_eur    161   8784.552795   8490.0  3729.928375 2000.000000   5500.0  11500.000000  19990.0   6000.000000
 mileage_km    161 164383.788820 149000.0 72303.291311    1.000000 111006.0 213880.000000 420000.0 102874.000000
 year_model    161   2014.888199   2015.0     2.722576 2009.000000   2013.0   2017.000000   2019.0      4.000000
  age_years    161     11.111801     11.0     2.722576    7.000000      9.0     13.000000     17.0      4.000000
km_per_year    161  14990.799588  14000.0  6067.218013    0.066667  10500.0  18846.153846  30000.0   8346.153846

📊 Tableau formaté :
   Variable Count     Mean   Median       Std   Min       Q1       Q3      Max     IQR
  price_eur   161    8,785    8,490  3,729.93 2,000    5,500   11,500   19,990   6,000
 mileage_km   161  164,384  149,000 72,303.29     1  111,006  213,880  420,000 102,874
 year_model   161    2,015    2,015      2.72 2,009    2,013    2,017    2,019       4
  age_years   161     11.1     11.0      2.72   7.0      9.0     13.0     17.0     4.0
km_per_year   161 14,990.8 14,000.0  6,067.22   0.1 10,500.0 18,846.2 30,000.0 8,346.2

📝 INTERPRÉTATION DES STATISTIQUES :
--------------------------------------------------

   📌 price_eur :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Dispersion MODÉRÉE (CV = 42%, σ = 3,730)
      → Étendue : [2,000 ; 19,990] (IQR = 6,000)

   📌 mileage_km :
      → Distribution asymétrique DROITE (moyenne 164,384 > médiane 149,000)
        Quelques valeurs élevées tirent la moyenne vers le haut.
      → Dispersion MODÉRÉE (CV = 44%, σ = 72,303)
      → Étendue : [1 ; 420,000] (IQR = 102,874)

   📌 year_model :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 0%, σ = 3)
      → Étendue : [2,009 ; 2,019] (IQR = 4)

   📌 age_years :
      → Distribution relativement SYMÉTRIQUE (moyenne ≈ médiane)
      → Faible dispersion (CV = 25%, σ = 3)
      → Étendue : [7 ; 17] (IQR = 4)

   📌 km_per_year :
      → Distribution asymétrique DROITE (moyenne 14,991 > médiane 14,000)
        Quelques valeurs élevées tirent la moyenne vers le haut.
      → Dispersion MODÉRÉE (CV = 40%, σ = 6,067)
      → Étendue : [0 ; 30,000] (IQR = 8,346)

======================================================================
📊 DISTRIBUTIONS PAR CATÉGORIES
======================================================================

📊 Prix moyen par année modèle...

   📋 Table : Prix par année modèle
   ---------------------------------------------------------------------------
    Année    Nb   Prix moy   Prix méd   Décote %
   ---------------------------------------------------------------------------
     2010     9      4,764      4,200        N/A
     2011    13      5,115      4,690      -7.3%
     2012    11      6,684      5,200     -30.7%
     2013    20      7,537      7,950     -12.8%
     2014    22      8,797      8,740     -16.7%
     2015    10      8,189      9,000      +6.9%
     2016    19      9,093      8,000     -11.0%
     2017    22     10,752      9,895     -18.2%
     2018    19     11,771     12,000      -9.5%
     2019    15     11,246     10,990      +4.5%

   📌 Décote annuelle moyenne : -10.5%

📊 Prix moyen par tranche de kilométrage...

   📋 Table : Prix par tranche de km
   ----------------------------------------------------------------------
        Tranche    Nb   Prix moy   Prix méd      Var %
   ----------------------------------------------------------------------
          0-20k     1      2,000      2,000        N/A
         20-50k     4     14,320     13,395    +616.0%
         50-80k     9     13,544     13,000      -5.4%
        80-120k    34     11,594     10,985     -14.4%
       120-160k    36     10,294     10,500     -11.2%
       160-200k    29      6,968      7,000     -32.3%
          200k+    48      5,548      5,200     -20.4%

📊 Prix moyen par âge...

   📋 Table : Prix par âge
   -----------------------------------------------------------------
     Âge    Nb   Prix moy   Décote %
   -----------------------------------------------------------------
       7    15     11,246        N/A
       8    19     11,771      +4.7%
       9    22     10,752      -8.7%
      10    19      9,093     -15.4%
      11    10      8,189      -9.9%
      12    22      8,797      +7.4%
      13    20      7,537     -14.3%
      14    11      6,684     -11.3%
      15    13      5,115     -23.5%
      16     9      4,764      -6.8%

   📌 La décote ralentit significativement à 16 ans

📊 Prix par type de carburant...

   📋 Table : Prix par carburant
   ----------------------------------------------------------------------
         Carburant    Nb   Prix moy   Prix méd
   ----------------------------------------------------------------------
            diesel   161      8,785      8,490

📊 Prix par type de vendeur...

   📋 Table : Prix par type de vendeur
   ------------------------------------------------------------
         Type    Nb   Prix moy   Prix méd
   ------------------------------------------------------------
      private   110      8,170      7,900
          pro    51     10,109      9,890

   📌 Test Mann-Whitney (médiane) : p = 0.0021
   ✅ Différence SIGNIFICATIVE (p < 0.05)
   📌 Écart médian Pro - Particulier : +1,990€

📊 Prix par modèle de véhicule...
   ℹ️ Un seul modèle détecté (nv200) — comparaison non applicable

   ✅ Toutes les distributions par catégorie sauvegardées dans /home/ubuntu/app/stats/nv200/figures

======================================================================
📊 ANALYSES AVANCÉES - SEUILS PSYCHOLOGIQUES
======================================================================

📊 Analyse des seuils de kilométrage...

   📋 Taux de décote par tranche de 10k km :
   --------------------------------------------------
        50k : décote   -1.4% (n=  3)
        60k : décote   15.9% (n=  2) ⚡
        70k : décote    4.8% (n=  4)
        80k : décote    5.0% (n=  8)
        90k : décote   -4.3% (n= 10)
       100k : décote    5.9% (n=  8)
       110k : décote    8.0% (n=  8)
       120k : décote  -13.6% (n= 10)
       130k : décote   12.9% (n= 11) ⚡
       140k : décote   14.2% (n= 12) ⚡
       150k : décote    4.4% (n=  3)
       160k : décote    6.8% (n=  6)
       170k : décote   32.3% (n=  6) ⚡
       180k : décote  -23.7% (n=  5)
       190k : décote   -8.1% (n= 12)
       200k : décote   -8.8% (n=  4)
       210k : décote   26.6% (n=  6) ⚡
       220k : décote   -5.1% (n=  7)
       230k : décote    2.5% (n=  7)
       240k : décote   -1.7% (n=  6)
       250k : décote   24.7% (n=  3) ⚡
       260k : décote   15.7% (n=  2) ⚡
       290k : décote  -27.8% (n=  5)
      300k+ : décote   19.4% (n=  6) ⚡

   📌 Seuils où la décote s'accélère (> 8%) :
      → 60k km : 15.9%
      → 130k km : 12.9%
      → 140k km : 14.2%
      → 170k km : 32.3%
      → 210k km : 26.6%
      → 250k km : 24.7%
      → 260k km : 15.7%
      → 300k+ km : 19.4%
   ✅ Sauvegardé : /home/ubuntu/app/stats/nv200/figures/seuils_km.png

📊 Analyse des seuils d'âge...

   📋 Taux de décote par année d'âge :
   ---------------------------------------------
     8 ans : décote   -4.7% (n= 19) 🐢 LENTE
     9 ans : décote    8.7% (n= 22)
    10 ans : décote   15.4% (n= 19) ⚡ FORTE
    11 ans : décote    9.9% (n= 10)
    12 ans : décote   -7.4% (n= 22) 🐢 LENTE
    13 ans : décote   14.3% (n= 20)
    14 ans : décote   11.3% (n= 11)
    15 ans : décote   23.5% (n= 13) ⚡ FORTE
    16 ans : décote    6.8% (n=  9)

   📌 Décote rapide (> 10% par an) :
      → 10 ans : 15.4%
      → 13 ans : 14.3%
      → 14 ans : 11.3%
      → 15 ans : 23.5%

   📌 Décote lente (< 5% par an) :
      → 8 ans : -4.7%
      → 12 ans : -7.4%
   ✅ Sauvegardé : /home/ubuntu/app/stats/nv200/figures/seuils_age.png

======================================================================
📊 IDENTIFICATION DES BONNES AFFAIRES
======================================================================

📊 Construction du modèle de prix attendu...
   📌 Modèle : prix = -448.01 × âge + -0.0295 × km + 18,609
   📌 R² = 0.595
📊 Calcul des écarts de prix...

   📋 Classification des annonces :
      🌟 Excellente affaire        :   32 ( 20.0%)
      👍 Bonne affaire             :   27 ( 16.9%)
      📊 Prix marché               :   53 ( 33.1%)
      💰 Cher                      :   23 ( 14.4%)
      🔴 Très cher                 :   25 ( 15.6%)
📊 Graphique : Distribution des écarts de prix...
   ✅ Sauvegardé : /home/ubuntu/app/stats/nv200/figures/ecarts_prix.png

   🌟 TOP 10 MEILLEURES AFFAIRES (écart le plus négatif) :
   ====================================================================================================
    1. [3138843536] Vehicule camionnette nissan nv200
       Prix:    2,000€ | Attendu:   11,889€ | Écart:  -83.2% | Année: 2011 | Km: 1
    2. [3159812831] Vend utilitaires nv200 nissan
       Prix:    2,000€ | Attendu:    6,877€ | Écart:  -70.9% | Année: 2011 | Km: 170,000
    3. [3160668277] Nissan nv 200
       Prix:    3,000€ | Attendu:    7,242€ | Écart:  -58.6% | Année: 2013 | Km: 188,000
    4. [3109648143] Nissan nv200 1.5 dci turbo
       Prix:    3,990€ | Attendu:    7,148€ | Écart:  -44.2% | Année: 2012 | Km: 176,000
    5. [3154995725] Nissan NV200 Fourgon 1.5 DCi 110ch BVM5 Optima - 2
       Prix:    4,000€ | Attendu:    6,927€ | Écart:  -42.3% | Année: 2014 | Km: 213,880
    6. [3116605709] Nissan NV200
       Prix:    4,500€ | Attendu:    7,761€ | Écart:  -42.0% | Année: 2011 | Km: 140,000
    7. [3127367839] Nissan NV200 1.5 DCI
       Prix:    5,490€ | Attendu:    8,932€ | Écart:  -38.5% | Année: 2014 | Km: 145,899
    8. [3142568361] Nissan nv 200 1.5 90ch
       Prix:    5,200€ | Attendu:    8,439€ | Écart:  -38.4% | Année: 2016 | Km: 193,000
    9. [3111521763] Nissan nv200
       Prix:    4,000€ | Attendu:    6,163€ | Écart:  -35.1% | Année: 2015 | Km: 255,000
   10. [3129497798] Nissan Nv200 CT OK Pneus neufs, GPS, Caméra de rec
       Prix:    5,990€ | Attendu:    9,158€ | Écart:  -34.6% | Année: 2018 | Km: 199,000

   🔴 TOP 10 ANNONCES SURÉVALUÉES (écart le plus positif) :
   ====================================================================================================
    1. [3156635875] Nissan NV200
       Prix:    3,500€ | Attendu:      798€ | Écart: +338.6% | Année: 2010 | Km: 361,000
    2. [3154023820] Camion
       Prix:    3,500€ | Attendu:      975€ | Écart: +259.0% | Année: 2010 | Km: 355,000
    3. [3153372541] Nissan nv 200
       Prix:   10,500€ | Attendu:    5,709€ | Écart:  +83.9% | Année: 2013 | Km: 240,000
    4. [3114600758] Van
       Prix:   18,500€ | Attendu:   10,344€ | Écart:  +78.9% | Année: 2014 | Km: 98,000
    5. [3158536730] Véhicule aménagé
       Prix:   13,500€ | Attendu:    8,504€ | Écart:  +58.7% | Année: 2012 | Km: 130,000
    6. [3156516616] 🚐 Nissan NV200 aménagé – Prêt à voyager
       Prix:    9,300€ | Attendu:    5,904€ | Écart:  +57.5% | Année: 2011 | Km: 203,000
    7. [3083668151] Nissan NV200 1.5 DCI 90CH VAN AMENAGE
       Prix:   14,999€ | Attendu:    9,664€ | Écart:  +55.2% | Année: 2014 | Km: 121,041
    8. [3155364135] Utilitaire Van Nissan NV200 2016
       Prix:   17,900€ | Attendu:   11,682€ | Écart:  +53.2% | Année: 2016 | Km: 83,000
    9. [2854647393] Nissan nv200 frigo 1.5 dci 110 optima
       Prix:   19,990€ | Attendu:   13,375€ | Écart:  +49.5% | Année: 2018 | Km: 55,957
   10. [3152612049] Van aménagé Nissan NV200
       Prix:   10,000€ | Attendu:    6,794€ | Écart:  +47.2% | Année: 2012 | Km: 188,000

🔎 Détection des prix suspects (seuil: -40%)...
   ⚠️  6 annonces avec prix suspect
   💾 6 signaux prix persistés dans SQLite

======================================================================
📊 TABLEAU DE BORD RÉCAPITULATIF
======================================================================

   ┌──────────────────────────────────────────────────┐
   │ Nombre total d'annonces      │                161 │
   │ Prix moyen                   │            8,785 € │
   │ Prix médian                  │            8,490 € │
   │ Km moyen                     │         164,384 km │
   │ Km médian                    │         149,000 km │
   │ Âge moyen                    │           11.1 ans │
   │ Âge médian                   │           11.0 ans │
   │ Km/an moyen                  │       14,991 km/an │
   └──────────────────────────────────────────────────┘

   ✅ Sauvegardé : /home/ubuntu/app/stats/nv200/figures/dashboard_kpis.png

======================================================================
💡 INSIGHTS PRINCIPAUX
======================================================================

   🎯 Âge optimal d'achat : ~16 ans (meilleur rapport prix/ancienneté)
   ⚡ Seuil km critique : la décote s'accélère le plus autour de (20000, 40000]
   👔 Les pros vendent 25.2% plus cher que les particuliers (médiane)
   🔄 Km/an médian : 14,000 km → Profil dominant : 15-25k (Intensif)
   🏭 Top 3 marques = 100% du marché : nissan (161)

======================================================================
💡 RECOMMANDATIONS
======================================================================

   🛒 POUR UN ACHETEUR :
   --------------------------------------------------
   • Sweet spot : véhicules de 5-8 ans, 60-120k km
     Prix moyen dans cette fourchette : 11,972€
     (13 annonces disponibles)
   • Prix médian du marché : 8,490€ → cible < 7,641€ pour une bonne affaire
   • Privilégier les annonces de particuliers si budget serré
   • Vérifier le km/an : < 15 000 km/an = usage normal

   💰 POUR UN VENDEUR :
   --------------------------------------------------
   • Prix médian du marché : 8,490€
   • Positionner légèrement sous le marché pour vendre vite (-5% à -10%)
   • Les véhicules < 149,000 km se vendent mieux
   • Mettre en avant un faible km/an si applicable

   🎯 SEGMENTS DE MARCHÉ :
   --------------------------------------------------
   • Budget (41 annonces) :
     Prix : 2,000€ - 5,500€
     Âge moyen : 13.6 ans | Km moyen : 238,507
   • Milieu de gamme (82 annonces) :
     Prix : 5,800€ - 11,500€
     Âge moyen : 10.7 ans | Km moyen : 157,184
   • Premium (38 annonces) :
     Prix : 11,800€ - 19,990€
     Âge moyen : 9.3 ans | Km moyen : 99,946

======================================================================
💾 EXPORT DES RÉSULTATS EN BASE SQLite
======================================================================
   📌 Run #65 créé
   🔍 Modèle : nv200
   📎 161 annonces liées au run
   ✅ Stats descriptives : 5 variables
   ✅ Modèle régression : 2 coefficients (R²=0.595)
   ✅ Référentiel prix : 44 segments
   ✅ Classifications deal : 161 annonces

   💾 Tout exporté dans /home/ubuntu/app/db/lbc.sqlite

══════════════════════════════════════════════════════════════════════
  ✅ ANALYSE TERMINÉE en 4.0 secondes
  📊 161 annonces analysées  (run #65)
  🔍 Modèle           : nv200
  💾 Base SQLite      : /home/ubuntu/app/db/lbc.sqlite
  📁 Figures          : /home/ubuntu/app/stats/nv200/figures
══════════════════════════════════════════════════════════════════════
============================================================
  CRAWL ALL — 9 modèle(s)
============================================================

[1/9] CLIO_4  (brand=renault, pages=41)
  URL: https://www.leboncoin.fr/recherche?category=2&text=clio%204&price=3000-9000&regd...
  $ /home/ubuntu/app/.venv/bin/python /home/ubuntu/app/crawler/leboncoin_search_export.py --output-file /home/ubuntu/app/leboncoin_ads.csv --pages 41 --model clio_4
  CSV : leboncoin_ads_clio_4_20260317_140000.csv
  $ /home/ubuntu/app/.venv/bin/python -m db.migrate_csv --input /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv --db /home/ubuntu/app/db/lbc.sqlite --model clio_4
  $ /home/ubuntu/app/.venv/bin/python /home/ubuntu/app/scripts/check_availability.py --csv /home/ubuntu/app/leboncoin_ads_clio_4_20260317_140000.csv --brand renault --model clio_4 --db /home/ubuntu/app/db/lbc.sqlite
  $ /home/ubuntu/app/.venv/bin/python -m stats.main --model clio_4 --skip-plots

[2/9] YARIS  (brand=toyota, pages=2)
  URL: https://www.leboncoin.fr/recherche?category=2&text=toyota%20yaris&price=3000-900...
  $ /home/ubuntu/app/.venv/bin/python /home/ubuntu/app/crawler/leboncoin_search_export.py --output-file /home/ubuntu/app/leboncoin_ads.csv --pages 2 --model yaris
  CSV : leboncoin_ads_yaris_20260317_140254.csv
  $ /home/ubuntu/app/.venv/bin/python -m db.migrate_csv --input /home/ubuntu/app/leboncoin_ads_yaris_20260317_140254.csv --db /home/ubuntu/app/db/lbc.sqlite --model yaris
  $ /home/ubuntu/app/.venv/bin/python /home/ubuntu/app/scripts/check_availability.py --csv /home/ubuntu/app/leboncoin_ads_yaris_20260317_140254.csv --brand toyota --model yaris --db /home/ubuntu/app/db/lbc.sqlite
  $ /home/ubuntu/app/.venv/bin/python -m stats.main --model yaris --skip-plots

[3/9] I20  (brand=hyundai, pages=4)
  URL: https://www.leboncoin.fr/recherche?category=2&text=i20&price=3000-9000&regdate=2...
  $ /home/ubuntu/app/.venv/bin/python /home/ubuntu/app/crawler/leboncoin_search_export.py --output-file /home/ubuntu/app/leboncoin_ads.csv --pages 4 --model i20
  CSV : leboncoin_ads_i20_20260317_140304.csv
  $ /home/ubuntu/app/.venv/bin/python -m db.migrate_csv --input /home/ubuntu/app/leboncoin_ads_i20_20260317_140304.csv --db /home/ubuntu/app/db/lbc.sqlite --model i20
  $ /home/ubuntu/app/.venv/bin/python /home/ubuntu/app/scripts/check_availability.py --csv /home/ubuntu/app/leboncoin_ads_i20_20260317_140304.csv --brand hyundai --model i20 --db /home/ubuntu/app/db/lbc.sqlite
  $ /home/ubuntu/app/.venv/bin/python -m stats.main --model i20 --skip-plots

[4/9] BERLINGO  (brand=citroen, pages=10)
  URL: https://www.leboncoin.fr/recherche?category=5&text=berlingo+xl&u_utility_brand=C...
  $ /home/ubuntu/app/.venv/bin/python /home/ubuntu/app/crawler/leboncoin_search_export.py --output-file /home/ubuntu/app/leboncoin_ads.csv --pages 10 --model berlingo
  CSV : leboncoin_ads_berlingo_20260317_140323.csv
  $ /home/ubuntu/app/.venv/bin/python -m db.migrate_csv --input /home/ubuntu/app/leboncoin_ads_berlingo_20260317_140323.csv --db /home/ubuntu/app/db/lbc.sqlite --model berlingo
  $ /home/ubuntu/app/.venv/bin/python /home/ubuntu/app/scripts/check_availability.py --csv /home/ubuntu/app/leboncoin_ads_berlingo_20260317_140323.csv --brand citroen --model berlingo --db /home/ubuntu/app/db/lbc.sqlite
  $ /home/ubuntu/app/.venv/bin/python -m stats.main --model berlingo --skip-plots

[5/9] C4  (brand=citroen, pages=5)
  URL: https://www.leboncoin.fr/recherche?category=2&text=c4&price=min-11000&regdate=20...
  $ /home/ubuntu/app/.venv/bin/python /home/ubuntu/app/crawler/leboncoin_search_export.py --output-file /home/ubuntu/app/leboncoin_ads.csv --pages 5 --model c4
  CSV : leboncoin_ads_c4_20260317_140413.csv
  $ /home/ubuntu/app/.venv/bin/python -m db.migrate_csv --input /home/ubuntu/app/leboncoin_ads_c4_20260317_140413.csv --db /home/ubuntu/app/db/lbc.sqlite --model c4
  $ /home/ubuntu/app/.venv/bin/python /home/ubuntu/app/scripts/check_availability.py --csv /home/ubuntu/app/leboncoin_ads_c4_20260317_140413.csv --brand citroen --model c4 --db /home/ubuntu/app/db/lbc.sqlite
  $ /home/ubuntu/app/.venv/bin/python -m stats.main --model c4 --skip-plots

[6/9] SCENIC  (brand=renault, pages=4)
  URL: https://www.leboncoin.fr/recherche?category=2&text=scenic&price=min-11000&regdat...
  $ /home/ubuntu/app/.venv/bin/python /home/ubuntu/app/crawler/leboncoin_search_export.py --output-file /home/ubuntu/app/leboncoin_ads.csv --pages 4 --model scenic
  CSV : leboncoin_ads_scenic_20260317_140444.csv
  $ /home/ubuntu/app/.venv/bin/python -m db.migrate_csv --input /home/ubuntu/app/leboncoin_ads_scenic_20260317_140444.csv --db /home/ubuntu/app/db/lbc.sqlite --model scenic
  $ /home/ubuntu/app/.venv/bin/python /home/ubuntu/app/scripts/check_availability.py --csv /home/ubuntu/app/leboncoin_ads_scenic_20260317_140444.csv --brand renault --model scenic --db /home/ubuntu/app/db/lbc.sqlite
  $ /home/ubuntu/app/.venv/bin/python -m stats.main --model scenic --skip-plots

[7/9] 5008  (brand=peugeot, pages=31)
  URL: https://www.leboncoin.fr/recherche?category=2&text=5008&price=min-11000&u_car_br...
  $ /home/ubuntu/app/.venv/bin/python /home/ubuntu/app/crawler/leboncoin_search_export.py --output-file /home/ubuntu/app/leboncoin_ads.csv --pages 31 --model 5008
  CSV : leboncoin_ads_5008_20260317_140459.csv
  $ /home/ubuntu/app/.venv/bin/python -m db.migrate_csv --input /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv --db /home/ubuntu/app/db/lbc.sqlite --model 5008
  $ /home/ubuntu/app/.venv/bin/python /home/ubuntu/app/scripts/check_availability.py --csv /home/ubuntu/app/leboncoin_ads_5008_20260317_140459.csv --brand peugeot --model 5008 --db /home/ubuntu/app/db/lbc.sqlite
  $ /home/ubuntu/app/.venv/bin/python -m stats.main --model 5008 --skip-plots

[8/9] FIESTA  (brand=ford, pages=44)
  URL: https://www.leboncoin.fr/recherche?category=2&text=ford%20fiesta&price=3000-1000...
  $ /home/ubuntu/app/.venv/bin/python /home/ubuntu/app/crawler/leboncoin_search_export.py --output-file /home/ubuntu/app/leboncoin_ads.csv --pages 44 --model fiesta
  ERREUR : crawler échoué pour fiesta

[9/9] NV200  (brand=nissan, pages=3)
  URL: https://www.leboncoin.fr/recherche?category=5&text=nv200&u_utility_brand=NISSAN&...
  $ /home/ubuntu/app/.venv/bin/python /home/ubuntu/app/crawler/leboncoin_search_export.py --output-file /home/ubuntu/app/leboncoin_ads.csv --pages 3 --model nv200
  CSV : leboncoin_ads_nv200_20260317_140907.csv
  $ /home/ubuntu/app/.venv/bin/python -m db.migrate_csv --input /home/ubuntu/app/leboncoin_ads_nv200_20260317_140907.csv --db /home/ubuntu/app/db/lbc.sqlite --model nv200
  $ /home/ubuntu/app/.venv/bin/python /home/ubuntu/app/scripts/check_availability.py --csv /home/ubuntu/app/leboncoin_ads_nv200_20260317_140907.csv --brand nissan --model nv200 --db /home/ubuntu/app/db/lbc.sqlite
  $ /home/ubuntu/app/.venv/bin/python -m stats.main --model nv200 --skip-plots

  .env restauré

============================================================
  RÉSUMÉ
============================================================
  ✓ clio_4               → OK
  ✓ yaris                → OK
  ✓ i20                  → OK
  ✓ berlingo             → OK
  ✓ c4                   → OK
  ✓ scenic               → OK
  ✓ 5008                 → OK
  ✗ fiesta               → ERREUR crawler
  ✓ nv200                → OK
============================================================

============================================================
Finished: 2026-03-17T14:09:21.365729
Duration: 561.4s
STATUS:SUCCESS