id,chapitre,description,script,test,resultat_attendu,resultat_obtenu,statut,date CALC-14-001,14,Jeu brut reproductible (graine 20261031) et identique au fichier : 618 inscriptions ; 127 anomalies (109 lignes + 18 doublons) ; rôle 600,analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_brut_reproductible_et_identique_au_fichier,618;127;600,618;127;600,verifie,2026-10-31 CALC-14-002,14,Comptes d'anomalies injectées par type (tab. 14.1),analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_anomalies_injectees,"18;5;8;12;10;9;6;8;6;20;15;10","idem",verifie,2026-10-31 CALC-14-003,14,Entonnoir 618→600 (R1)→595 (R4)→587 (R7)→587 (I1)→581 (S1)→579 (E1),analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_entonnoir_et_journal,618;600;595;587;587;581;579,618;600;595;587;587;581;579,verifie,2026-10-31 CALC-14-004,14,Journal : 144 lignes ; R1 18 ; R2 10 ; R3 8 ; R4 5 ; R5 12 ; R6 15 ; R7 8 ; G1 15 ; I1 45 ; S1 6 ; E1 2,analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_entonnoir_et_journal,144,144,verifie,2026-10-31 CALC-14-005,14,Corrections R2/R3/R5 restituent les valeurs du jeu propre (dates ; prix net ; superficie),analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_corrections_restituent_les_valeurs_propres,écart ≤ 0.5,écart ≤ 0.5,verifie,2026-10-31 CALC-14-006,14,Exclusions S1 : B0003 B0006 B0021 B0105 B0173 B0558 (4 liées + 2 faux positifs) ; E1 : B0039 (t −5.84 ; D 0.084) ; B0410 (t −6.70 ; D 0.048),analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_entonnoir_et_journal,idem,idem,verifie,2026-10-31 CALC-14-007,14,Itérations E1 : n 581→579 ; σ 0.0897→0.0837 ; Cook max 0.084 < 1 ; 25 obs > 4/n ; 18 leviers > 2k/n,analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_iterations_regression,581;579;0.0897;0.0837;25;18,581;579;0.0897;0.0837;25;18,verifie,2026-10-31 CALC-14-008,14,Identités : tr(H) = k ; D_i = r_i² h/(k(1−h)) = forme par réestimation ; t_i = r_i sqrt((n−k−1)/(n−k−r_i²)),analysis/python/cases/ch14_nettoyage.py (diagnostics ; cook_direct),analysis/python/tests/test_ch14.py::test_identites_levier_cook,égalité à 1e-6,égalité à 1e-6,verifie,2026-10-31 CALC-14-009,14,Constante 1/Φ⁻¹(0.75) = 1.4826 ; 1.4826·MAD → σ (simulation 200 000 N(0;2)),scipy.stats.norm,analysis/python/tests/test_ch14.py::test_constante_mad_et_score,1.4826 ; 2.00 ± 1 %,1.4826 ; 2.00,verifie,2026-10-31 CALC-14-010,14,Masquage Hull (tab. 14.3) : n 193 ; s 1.395 ; 1.4826·MAD 0.181 ; 2 vs 10 signalées ; 2 prix à 1 $,analysis/python/cases/ch14_nettoyage.py (illustration_masquage),analysis/python/tests/test_ch14.py::test_masquage,193;1.395;0.181;2;10,193;1.395;0.181;2;10,verifie,2026-10-31 CALC-14-011,14,Modèles (tab. 14.6) : brut n 573 R² 0.039 σ 1.231 lnS 0.2009 préd 565 471 ; règles σ 0.1132 ; S1 σ 0.0897 ; nettoyé n 579 R² 0.850 σ 0.0837 lnS 0.5335 préd 637 017 ; référence n 600 R² 0.853 σ 0.0830 lnS 0.5391 préd 637 953,analysis/python/cases/ch14_nettoyage.py (comparer_modeles),analysis/python/tests/test_ch14.py::test_modeles_avant_apres,idem,idem,verifie,2026-10-31 CALC-14-012,14,Écart nettoyé − référence ≤ 0.44 erreur-type sur les 16 coefficients,analysis/python/cases/ch14_nettoyage.py,analysis/python/tests/test_ch14.py::test_modeles_avant_apres,< 0.5,0.44,verifie,2026-10-31 CALC-14-013,14,Géocodage (tab. 14.5) : erreurs médianes 6/18/47/177/1199 m ; voisins conservés 99.1/97.1/93.1/76.1/17.6 % ; rayon modifié 0/0/0.33/1.33/6.67 % ; 103 ventes dans 3 km ; médiane Rayleigh 1.1774σ,analysis/python/cases/ch14_nettoyage.py (simulation_geocodage),analysis/python/tests/test_ch14.py::test_geocodage,idem,idem,verifie,2026-10-31 CALC-14-014,14,Appariement (tab. 14.7) : 367 (59.4 %) ; 198 (32.0 %) ; 45 (7.3 %) ; 8 (1.3 %) ; 3 ambigus ; 0 faux,analysis/python/cases/ch14_nettoyage.py (appariement_role),analysis/python/tests/test_ch14.py::test_appariement,idem,idem,verifie,2026-10-31 CALC-14-015,14,Imputations (tab. 14.8) : suppression n 535 lnT 0.0969 préd 640 921 ; médiane 0.0941 / 637 017 ; régression 0.0940 / 637 166 ; indicateur 0.0945 / 638 354 ; coef manq_terrain −0.0215,analysis/python/cases/ch14_nettoyage.py (comparer_imputations),analysis/python/tests/test_ch14.py::test_imputations,idem,idem,verifie,2026-10-31 CALC-14-016,14,Sensibilité (tab. 14.9) : 12 combinaisons ; 6 liées détectées partout ; faux positifs 22 (2.5;2.5) / 2 (3.5;3) / 0 (4;3) ; σ 0.0783–0.0838 ; prédiction 633 813–638 476,analysis/python/cases/ch14_nettoyage.py (sensibilite_seuils),analysis/python/tests/test_ch14.py::test_sensibilite_seuils,idem,idem,verifie,2026-10-31 CALC-14-017,14,Variante MNAR (sol. 14.7) : suppression n 536 lnT 0.1007 préd 638 976 ; médiane 0.0977 / 636 195 ; régression 0.0972 / 636 224 ; indicateur 0.0978 / 638 201 ; coef manq_terrain −0.0502 (e.-t. 0.0143),analysis/python/cases/ch14_nettoyage.py (variante_mnar_terrain),analysis/python/tests/test_ch14.py::test_variante_mnar,idem,idem,verifie,2026-10-31 CALC-14-018,14,Solutions 14.1–14.5 : méd 3260 MAD 110 z 16.68 / zc 2.65 ; 1776 pi² = 165.0 m² ; r −3.074 t −3.097 D 0.0246 ; εδ −0.0347 (−3.4 %) σ 0.173 ; poids FS 16.35 / 11.18 / 0.78,solutions/ch14.tex,analysis/python/tests/test_ch14.py::test_solutions_exercices,idem,idem,verifie,2026-10-31