Qualité des données
Comment Normi nettoie, normalise et enrichit les données DVF brutes.
Pourquoi nettoyer les données DVF ?
Les données DVF brutes contiennent des artefacts qui faussent les analyses : ventes en lot (un immeuble entier vendu en une transaction), outliers de prix (€1 symbolique ou prix astronomique), et types de biens mal typés. Sans traitement, les médianes et moyennes sont significativement biaisées.
Détection des ventes en lot
Une vente en lot (is_bulk_sale = true) est détectée quand nombre_de_lots > 1. Ces transactions incluent des immeubles entiers, des parkings groupés, ou des copropriétés vendues en bloc. Elles génèrent un prix par lot très bas (prix total / nombre de lots) qui biais les médianes.
Par défaut, exclude_bulk_sales=true sur tous les endpoints. Passez exclude_bulk_sales=false si vous analysez spécifiquement les marchés de l'investissement locatif en lot.
Détection des outliers de prix
Une transaction est marquée is_price_outlier = true si son prix/m² est statistiquement aberrant par rapport aux transactions similaires de la même zone et période.
La méthode utilisée est la méthode IQR (Interquartile Range) : un prix/m² est outlier s'il est inférieur à Q1 - 1.5 × IQR ou supérieur à Q3 + 1.5 × IQR. Ce seuil est calculé par code postal et par type de bien.
Typage intelligent des biens
Le champ type_local brut DVF est parfois incorrect ou ambigu. Normi ajoute computed_type_local qui corrige les cas les plus fréquents :
| Cas | type_local brut | computed_type_local |
|---|---|---|
| Transaction avec plusieurs lots de types mixtes | Appartement + Dépendance | Appartement |
| Local sans surface bâtie | Local industriel | Terrain |
| Maison avec terrain | Maison | Maison |
| Parking ou box seul | Dépendance | Dépendance |
Par défaut, les filtres type_local=Appartement utilisent computed_type_local. Passez use_original_type=true pour utiliser le champ brut DVF.
Géocodage
Les coordonnées GPS (latitude, longitude) sont calculées par l' API Adresse (BAN / IGN) à partir de l'adresse complète de chaque transaction.
Le taux de succès est d'environ 94%. Les 6% non géocodées sont des adresses introuvables (erreurs de saisie, voies récentes non encore dans la base BAN) — ces transactions restent disponibles mais sans coordonnées GPS. Elles sont exclues des recherches par rayon GPS.
Flags de qualité
| Champ | Signification | Comportement par défaut |
|---|---|---|
| is_bulk_sale | Transaction avec plusieurs lots | Exclue (exclude_bulk_sales=true) |
| is_price_outlier | Prix/m² statistiquement aberrant | Exclue (exclude_outliers=true) |