erreur_pays = ['[RE]','[GP]'] avantages.loc[avantages['benef_pays_code'].isin(erreur_pays), 'benef_pays_code'] = '[FR]' # * On homogénéise les valeurs manquantes ou tierces par la mention "non-renseigné" avantages = avantages.fillna('non renseigné') to_replace = ['[AUTRE]', ''] avantages.replace(to_replace, 'non renseigné', inplace=True) # * On transforme la valeur des conventions/avantages en leur équivalent décile (uniformisation) avantages['avant_montant_ttc'] = avantages['avant_montant_ttc'].astype(float) avantages['montant_décile'] = pd.qcut(avantages.avant_montant_ttc,10) # * On transforme la date (signature des avantages) en mois/année (le jour est trop identifiant) avantages['date'] = last_letters(avantages['avant_date_signature'],3) avantages['avant_nature'] = avantages['avant_nature'].str.lower() # * On supprime d'abord les variables identifiantes afin de ne garder que les variables quasi-identifiantes variables_supprimees = ['avant_convention_lie', 'identifiant_type', 'benef_qualification', 'benef_speicalite_libelle', 'ligne_rectification', 'denomination_sociale', 'benef_titre_libelle', 'benef_prenom', 'benef_nom',
avantages.loc[avantages['benef_pays_code'].isin(erreur_pays), 'benef_pays_code'] = '[FR]' # * On homogénéise les valeurs manquantes ou tierces par la mention "non-renseigné" avantages = avantages.fillna('non renseigné') to_replace = ['[AUTRE]', ''] avantages.replace(to_replace, 'non renseigné', inplace=True) # * On transforme la valeur des conventions/avantages en leur équivalent décile (uniformisation) avantages['avant_montant_ttc'] = avantages['avant_montant_ttc'].astype(float) avantages['montant_décile'] = pd.qcut(avantages.avant_montant_ttc, 10) # * On transforme la date (signature des avantages) en mois/année (le jour est trop identifiant) avantages['date'] = last_letters(avantages['avant_date_signature'], 3) avantages['avant_nature'] = avantages['avant_nature'].str.lower() # * On supprime d'abord les variables identifiantes afin de ne garder que les variables quasi-identifiantes variables_supprimees = [ 'avant_convention_lie', 'identifiant_type', 'benef_qualification', 'benef_speicalite_libelle', 'ligne_rectification', 'denomination_sociale', 'benef_titre_libelle', 'benef_prenom', 'benef_nom', 'benef_adresse1', 'benef_adresse2', 'benef_adresse3', 'benef_adresse4', 'benef_identifiant_valeur', 'benef_ville', 'benef_etablissement_ville', 'categorie', 'benef_qualite_code', 'benef_codepostal', 'benef_etablissement_codepostal', 'ligne_identifiant', 'pays', 'benef_denomination_sociale', 'benef_objet_social', 'avant_date_signature', 'avant_montant_ttc', 'benef_etablissement'
'Date de naissance', 'Pays de naissance', 'Nom', 'Destiné à la consommation humaine', 'Date de mort'] equides.columns = nom_de_colonnes # On supprime la date de mort puisque cela nous fournirait un indice sur l'âge du cheval, # qu'il faudrait veiller à anonymiser. variables_supprimees = ['Date de mort', 'Destiné à la consommation humaine'] equides = equides.drop(variables_supprimees,1) # La variable "date de naissance" doit être recodée. On choisit de ne garder que l'année. equides['Date de naissance'] = last_letters(equides['Date de naissance'],6) # On remplace les modalités vides ou non renseignées par des "non renseigné" equides = equides.fillna('non renseigné') equides = equides.applymap(lambda x: x.strip()) equides.replace('', 'non renseigné', inplace=True) # On convertit tous les noms de races en minuscules afin de mieux pouvoir uniformiser # et on normalise afin de n'obtenir plus qu'une modalité inconnu, anglo-arabe, weslh ou aa compl. equides['Race'] = equides['Race'].str.lower() liste_races = equides['Race'].unique().tolist() for word in ['inconnu', 'anglo-arabe', 'welsh', 'aa compl.']: