Croisement de deux tables pour obtenir la liste des régions de France avec le nom de leurs chefs-lieux
Présentation et méthode
On suppose qu'on dispose des fichiers reg2018.txt et comsimp2018.txt .
Donnons-en une description.
Il s'agit de deux tables, l'une sur les régions de France, l'autre sur les communes françaises.
Vous trouverez ici le détail de la signification des descripteurs de ces deux collections ; donnons uniquement la signification de ces acronymes.
Collection des régions ( fichier reg2018.txt)
0 | 1 | 2 | 3 | 4 | |
---|---|---|---|---|---|
Descripteur | REGION | CHEFLIEU | TNCC | NCC | NCCENR |
Signification | Code Région | Code INSEE du chef lieu de la région | Type de nom en clair | Nom en clair (Majuscules) | Nom en clair (typographie riche) |
Collection des communes ( fichier comsimp2018.txt)
0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Descripteur | CDC | CHEFLIEU | REG | DEP | COM | AR | CT | TNCC | ARTMAJ | NCC | ARTMIN | NCCENR |
Signification | Découpage de la commune en cantons | Chef-lieu d'arrondissement, de département, de région ou bureau centralisateur : 3 pour chef-lieu de département 4 pour chef-lieu de département et de région | Code région | Code département | Code commune | Code arrondissement | Code canton | Type de nom en clair | Article (majuscules) | Nom en clair (majuscules) | Article (typographie riche) | Nom en clair (typographie riche) |
On constate que la liste les régions de France contient uniquement les chef-lieux de région sous la forme de leur code INSEE à 5 chiffres.
On ne peut donc pas uniquement utiliser ce fichier pour en extraire le nom des chefs-lieux.
Méthode : Comment traiter les données pour afficher le nom des régions et celui de leur chef-lieu ?
On va utiliser le fait que les deux tables ont un descripteur en commun : REG pour l'une et REGION pour l'autre. Elles portent un nom différent, mais toutes les deux désignent la même chose : le numéro de région.
Après lecture avec Python des deux fichiers de données, on va :
Parcourir l'ensemble des communes dont la valeur du descripteur 1 (=CHEFLIEU) est égal à '4' de façon à ne retenir que les communes chef-lieu de région,
Pour chacune de ces communes, parcourir l'ensemble des régions et, si le descripteur 0 (=REGION) de l'une des régions est identique au descripteur 2 (=REG) de la commune (ce qui veut dire qu'on a trouvé la région de la commune concernée), afficher dans la console de Python la valeur du descripteur 3 (=NCC) de la région suivie de celle du descripteur 9 (=NCC) de la commune, c'est à dire le nom de la région et celui de la commune.