datagouv / dvf

Scripts permettant d'améliorer les données DVF
https://www.data.gouv.fr/fr/datasets/demandes-de-valeurs-foncieres-geolocalisees/
MIT License
53 stars 23 forks source link

L'ordre des lignes entre deux releases #4

Open DavidLacroix opened 4 years ago

DavidLacroix commented 4 years ago

Bonjour,

L'ordre des lignes du CSV peut varier au sein d'une même mutation. Dans l'exemple ci-dessous, la ligne 2 et la ligne 3 des fichiers sont inversés.

valeursfoncieres-2014.txt - version 20190423

Code service CH|Reference document|1 Articles CGI|2 Articles CGI|3 Articles CGI|4 Articles CGI|5 Articles CGI|No disposition|Date mutation|Nature mutation|Valeur fonciere|No voie|B/T/Q|Type de voie|Code voie|Voie|Code postal|Commune|Code departement|Code commune|Prefixe de section|Section|No plan|No Volume|1er lot|Surface Carrez du 1er lot|2eme lot|Surface Carrez du 2eme lot|3eme lot|Surface Carrez du 3eme lot|4eme lot|Surface Carrez du 4eme lot|5eme lot|Surface Carrez du 5eme lot|Nombre de lots|Code type local|Type local|Identifiant local|Surface reelle bati|Nombre pieces principales|Nature culture|Nature culture speciale|Surface terrain
|||||||000001|09/01/2014|Vente|251500,00|532||RTE|0006|DE MEZERIAT|1310|POLLIAT|01|301||AH|260||||||||||||0|1|Maison||147|5|S||1501
|||||||000001|09/01/2014|Vente|174500,00|22||BD|2540|MAL LECLERC|1000|BOURG-EN-BRESSE|01|53||AE|111||49|94,22|6||||||||2|2|Appartement||80|2|||
|||||||000001|09/01/2014|Vente|174500,00|22||BD|2540|MAL LECLERC|1000|BOURG-EN-BRESSE|01|53||AE|111||36||||||||||1|3|Dépendance||0|0|||
|||||||000001|02/01/2014|Vente|157500,00|1389||RTE|0201|DE STRASBOURG|1440|VIRIAT|01|451||ZO|157||||||||||||0||||||S||24
|||||||000001|02/01/2014|Vente|157500,00|1369||RTE|0201|DE STRASBOURG|1440|VIRIAT|01|451||ZO|158||||||||||||0|1|Maison||103|4|S||1569

valeursfoncieres-2014.txt - version 20191030

Code service CH|Reference document|1 Articles CGI|2 Articles CGI|3 Articles CGI|4 Articles CGI|5 Articles CGI|No disposition|Date mutation|Nature mutation|Valeur fonciere|No voie|B/T/Q|Type de voie|Code voie|Voie|Code postal|Commune|Code departement|Code commune|Prefixe de section|Section|No plan|No Volume|1er lot|Surface Carrez du 1er lot|2eme lot|Surface Carrez du 2eme lot|3eme lot|Surface Carrez du 3eme lot|4eme lot|Surface Carrez du 4eme lot|5eme lot|Surface Carrez du 5eme lot|Nombre de lots|Code type local|Type local|Identifiant local|Surface reelle bati|Nombre pieces principales|Nature culture|Nature culture speciale|Surface terrain
|||||||000001|09/01/2014|Vente|251500,00|532||RTE|0006|DE MEZERIAT|1310|POLLIAT|01|301||AH|260||||||||||||0|1|Maison||147|5|S||1501
|||||||000001|09/01/2014|Vente|174500,00|22||BD|2540|MAL LECLERC|1000|BOURG-EN-BRESSE|01|53||AE|111||36||||||||||1|3|Dépendance||0|0|||
|||||||000001|09/01/2014|Vente|174500,00|22||BD|2540|MAL LECLERC|1000|BOURG-EN-BRESSE|01|53||AE|111||49|94,22|6||||||||2|2|Appartement||80|2|||
|||||||000001|02/01/2014|Vente|157500,00|1389||RTE|0201|DE STRASBOURG|1440|VIRIAT|01|451||ZO|157||||||||||||0||||||S||24
|||||||000001|02/01/2014|Vente|157500,00|1369||RTE|0201|DE STRASBOURG|1440|VIRIAT|01|451||ZO|158||||||||||||0|1|Maison||103|4|S||1569

Comme les identifiants originaux sont absents, l'ordre des lignes du fichier est nécessaire pour identifier les groupements de ligne représentant une mutation. Ces variations ont malheureusement un impact.

Est-ce du ressors d'Etalab ?

kofronpi commented 3 years ago

C'est l'enfer... As-tu pu avancer sur ce point @DavidLacroix ?

DavidLacroix commented 3 years ago

Non, malheureusement le problème semble provenir du producteur de la donnée...

kofronpi commented 3 years ago

Je vais essayer de regarder avec la version qui vient de sortir en octobre. Etalab génère un id, selon toi cet id est mauvais / impacté par le changement des lignes ? @DavidLacroix

DavidLacroix commented 3 years ago

Non, comme la DGFIP ne livre pas les identifiants de mutation (ça n'est pas dans le décret) il faut se baser sur l'ordre des lignes pour reconstituer des identifiants de mutation (regrouper les lignes consécutive du csv en une même mutation). Si l'ordre des lignes n'est pas stable entre deux livrables, ça peut poser problème.