expanded_insee = expand_insee(g, annuaire, avantages) expanded_insee.columns = avantages.columns.tolist() avantages_total = pd.concat([avantages, expanded_insee]).reset_index() avantages_total = avantages_total.drop('index',1) # === On anonymise (données enrichies) === Avantages_avec_insee = AnonymDataFrame(avantages_total.copy(), ordre_aggregation, unknown='non renseigné') Avantages_avec_insee.local_transform(method_anonymisation, k, force_unknown='Forcer') Avantages_avec_insee.df = Avantages_avec_insee.anonymized_df table = Avantages_avec_insee.df[Avantages_avec_insee.df['ligne_type']=='[A]'] modalites_modifiees_avec_insee = (table.values != avantages_total[avantages_total['ligne_type']=='[A]'].values).sum() modalites_intactes_avec_insee = (table.values == avantages_total[avantages_total['ligne_type']=='[A]'].values).sum() ## IV. Comparaison # === On va maintenant comparer par variables le taux de remplacement === (avantages_kanonym[var[0]] != avantages[var[0]]).sum() modif_par_var_1 = []
expanded_insee = expand_insee(g, annuaire, avantages) expanded_insee.columns = avantages.columns.tolist() avantages_total = pd.concat([avantages, expanded_insee]).reset_index() avantages_total = avantages_total.drop('index', 1) # === On anonymise (données enrichies) === Avantages_avec_insee = AnonymDataFrame(avantages_total.copy(), ordre_aggregation, unknown='non renseigné') Avantages_avec_insee.local_transform(method_anonymisation, k, force_unknown='Forcer') Avantages_avec_insee.df = Avantages_avec_insee.anonymized_df table = Avantages_avec_insee.df[Avantages_avec_insee.df['ligne_type'] == '[A]'] modalites_modifiees_avec_insee = ( table.values != avantages_total[avantages_total['ligne_type'] == '[A]'].values).sum() modalites_intactes_avec_insee = (table.values == avantages_total[ avantages_total['ligne_type'] == '[A]'].values).sum() ## IV. Comparaison # === On va maintenant comparer par variables le taux de remplacement === (avantages_kanonym[var[0]] != avantages[var[0]]).sum() modif_par_var_1 = []
len(liste_races) # ## II. Anonymisation # On définit les variables à anonymiser ordre_aggregation = ['Race', 'Sexe', 'Robe', 'Pays de naissance', 'Destiné à la consommation humaine', 'Date de naissance'] Equides = AnonymDataFrame(equides, ordre_aggregation, unknown='non renseigné') def aggregation_serie(x): return(local_aggregation(x, 5, 'regroup_with_smallest', 'non renseigné')) method_anonymisation = [(name, aggregation_serie) for name in ordre_aggregation[:-1]] def aggregation_year(x): return(local_aggregation(x, 5, 'with_closest', 'non renseigné')) method_anonymisation += [('Date de naissance', aggregation_year)] Equides.local_transform(method_anonymisation, 5) Equides.df = Equides.anonymized_df Equides.get_k()