In [ ]:
from unidecode import unidecode
import pandas as pd
In [ ]:
liste_regions = ["Auvergne-Rhône-Alpes","Bourgogne-Franche-Comté","Bretagne","Centre-Val de Loire","Corse","Grand Est","Hauts-de-France","Ile-de-France",
    "Normandie","Nouvelle-Aquitaine","Occitanie","Pays de la Loire","Provence Alpes Côte d’Azur"]
liste_cheflieux = ["lyon", "dijon", "Rennes", "orléans","Ajaccio", "strasbourg", "Lille", "paris", "rouen", "Bordeaux", "toulouse", "nantes", "marseille"]
In [ ]:
df = pd.DataFrame({"régions" : liste_regions, "chefs lieux" : liste_cheflieux})
df.head()
Out[ ]:
régions chefs lieux
0 Auvergne-Rhône-Alpes lyon
1 Bourgogne-Franche-Comté dijon
2 Bretagne Rennes
3 Centre-Val de Loire orléans
4 Corse Ajaccio

gestion des colonnes :

In [ ]:
for col in df.columns :
    # unidecode va retirer les accents, le replace permet de remplacer les espaces avec un underscore
    df = df.rename(columns = {col : unidecode(col).replace(" ", "_").title()})
df.head(2)
Out[ ]:
Regions Chefs_Lieux
0 Auvergne-Rhône-Alpes lyon
1 Bourgogne-Franche-Comté dijon

Uniformisation des noms de régions et chefs lieux :

In [ ]:
for col in df.columns :
    df[col] = df[col].apply(lambda x: unidecode(x).title().replace(" ","-"))

display(df)
Regions Chefs_Lieux
0 Auvergne-Rhone-Alpes Lyon
1 Bourgogne-Franche-Comte Dijon
2 Bretagne Rennes
3 Centre-Val-De-Loire Orleans
4 Corse Ajaccio
5 Grand-Est Strasbourg
6 Hauts-De-France Lille
7 Ile-De-France Paris
8 Normandie Rouen
9 Nouvelle-Aquitaine Bordeaux
10 Occitanie Toulouse
11 Pays-De-La-Loire Nantes
12 Provence-Alpes-Cote-D'Azur Marseille