Bonjour,
Je construis un outil de contrôles d'audit qui consomme le fichier consolidé
decp.parquet. En profilant les données j'ai isolé un défaut de date qui semble venir
d'une conversion, et qui n'est pas couvert par le mécanisme montant_anomalie.
Tous les chiffres ci-dessous portent sur le fichier publié tel quel, soit 3 250 932 lignes.
Constat
730 marchés portent une dateNotification dont l'année est comprise entre 0001 et 0031.
Exemples tels quels dans le fichier :
| uid |
dateNotification |
sourceDataset |
| 200071397000182021000902_38420000 |
0031-05-22 |
pes_marche_legacy |
| 213502362000142021210101_09000000 |
0030-11-22 |
pes_marche_legacy |
| 21830112500017202121623ST0302_45321000 |
0030-11-22 |
decp_colmo |
Diagnostic proposé
Le format source semble être JJ-MM-AA, lu comme AAAA-MM-JJ. 0031-05-22
correspondrait donc au 31 mai 2022.
Deux éléments appuient l'hypothèse :
- le composant lu comme année ne prend aucune valeur hors de l'intervalle 1–31,
soit exactement la plage d'un jour du mois ;
- le composant lu comme jour vaut 22 dans 528 cas sur 730, puis 25, 24 et 20, ce qui
correspondrait aux années 2022, 2025, 2024 et 2020.
Dix sourceDataset sont concernés, en tête pes_marche_legacy (387), decp_colmo (110),
scrap_marches-securises.fr (98) et pes_marche_2024 (97). Cette répartition fait plutôt
penser à une fonction de conversion partagée qu'à un connecteur particulier.
Effets de bord
- 96 582 marchés ont une
datePublicationDonnees antérieure à leur dateNotification,
avec un écart minimal de −732 656 jours
- 610 dates de publication sont antérieures à 2018
Reproduction
import pandas as pd
df = pd.read_parquet("decp.parquet", columns=["uid", "dateNotification", "sourceDataset"])
annee = pd.to_datetime(df.dateNotification, errors="coerce").dt.year
suspects = df[annee.between(1, 31)]
print(len(suspects))
print(suspects.sourceDataset.value_counts())
Version testée : decp.parquet publié le 2026-08-27, SHA-1
3d1a1ab76a4e2eff7799ff8d4f4fd5637a29bbb8.
Question
Les anomalies de montant sont signalées via montant_anomalie, mais seuls 34 des 730
marchés concernés y apparaissent. Serait-il envisageable d'étendre ce mécanisme aux dates,
avec une colonne date_anomalie ?
Je peux proposer une PR si la piste vous paraît juste — dites-moi simplement où se situe la
conversion des dates dans la chaîne.
Merci pour ce jeu de données, qui est par ailleurs remarquablement propre sur les montants :
1 251 des 1 252 montants supérieurs à 10 Md€ et 623 des 628 montants négatifs sont déjà correctement signalés.
Bonjour,
Je construis un outil de contrôles d'audit qui consomme le fichier consolidé
decp.parquet. En profilant les données j'ai isolé un défaut de date qui semble venird'une conversion, et qui n'est pas couvert par le mécanisme
montant_anomalie.Tous les chiffres ci-dessous portent sur le fichier publié tel quel, soit 3 250 932 lignes.
Constat
730 marchés portent une
dateNotificationdont l'année est comprise entre 0001 et 0031.Exemples tels quels dans le fichier :
Diagnostic proposé
Le format source semble être
JJ-MM-AA, lu commeAAAA-MM-JJ.0031-05-22correspondrait donc au 31 mai 2022.
Deux éléments appuient l'hypothèse :
soit exactement la plage d'un jour du mois ;
correspondrait aux années 2022, 2025, 2024 et 2020.
Dix
sourceDatasetsont concernés, en têtepes_marche_legacy(387),decp_colmo(110),scrap_marches-securises.fr(98) etpes_marche_2024(97). Cette répartition fait plutôtpenser à une fonction de conversion partagée qu'à un connecteur particulier.
Effets de bord
datePublicationDonneesantérieure à leurdateNotification,avec un écart minimal de −732 656 jours
Reproduction
Version testée :
decp.parquetpublié le 2026-08-27, SHA-13d1a1ab76a4e2eff7799ff8d4f4fd5637a29bbb8.Question
Les anomalies de montant sont signalées via
montant_anomalie, mais seuls 34 des 730marchés concernés y apparaissent. Serait-il envisageable d'étendre ce mécanisme aux dates,
avec une colonne
date_anomalie?Je peux proposer une PR si la piste vous paraît juste — dites-moi simplement où se situe la
conversion des dates dans la chaîne.
Merci pour ce jeu de données, qui est par ailleurs remarquablement propre sur les montants :
1 251 des 1 252 montants supérieurs à 10 Md€ et 623 des 628 montants négatifs sont déjà correctement signalés.