list_taux_d_effort_rev_disp_loyerimput = []

        Wconcat_rev_disp_loyerimput['taux_d_effort_tva'] = \
            Wconcat_rev_disp_loyerimput['tva_total'] / Wconcat_rev_disp_loyerimput['rev_disp_loyerimput']
        list_taux_d_effort_rev_disp_loyerimput.append('taux_d_effort_tva')
        Wconcat_rev_disp_loyerimput['taux_d_effort_alcool'] = (
            Wconcat_rev_disp_loyerimput['droit_d_accise_alcool'] /
            Wconcat_rev_disp_loyerimput['rev_disp_loyerimput']
            )
        list_taux_d_effort_rev_disp_loyerimput.append('taux_d_effort_alcool')
        Wconcat_rev_disp_loyerimput['taux_d_effort_tabac'] = (
            Wconcat_rev_disp_loyerimput['droit_d_accise_tabac'] /
            Wconcat_rev_disp_loyerimput['rev_disp_loyerimput']
            )
        list_taux_d_effort_rev_disp_loyerimput.append('taux_d_effort_tabac')
        Wconcat_rev_disp_loyerimput['taux_d_effort_assurance'] = \
            Wconcat_rev_disp_loyerimput['taxe_assurance'] / Wconcat_rev_disp_loyerimput['rev_disp_loyerimput']
        list_taux_d_effort_rev_disp_loyerimput.append('taux_d_effort_assurance')
        Wconcat_rev_disp_loyerimput['taux_d_effort_tipp'] = \
            Wconcat_rev_disp_loyerimput['tipp'] / Wconcat_rev_disp_loyerimput['rev_disp_loyerimput']
        list_taux_d_effort_rev_disp_loyerimput.append('taux_d_effort_tipp')

        df_to_graph_rev_disp = Wconcat_rev_disp[list_taux_d_effort_rev_disp].copy()
        graph_builder_bar(df_to_graph_rev_disp)

        df_to_graph_conso = Wconcat_conso[list_taux_d_effort_rev_disp].copy()
        graph_builder_bar(df_to_graph_conso)

        df_to_graph_rev_disp_loyerimput = Wconcat_rev_disp_loyerimput[list_taux_d_effort_rev_disp_loyerimput].copy()
        graph_builder_bar(df_to_graph_rev_disp_loyerimput)
        'tva_taux_intermediaire',
        'tva_taux_reduit',
        'tva_taux_super_reduit',
        'tva_total',
        'niveau_vie_decile',
        'rev_disponible',
        'pondmen',
        ]

    # Constition d'une base de données agrégée par décile (= collapse en stata)
    for year in [2000, 2005, 2011]:
        df = simulate_df(var_to_be_simulated = var_to_be_simulated, year = year)
        if year == 2011:
            df.niveau_vie_decile[df.decuc == 10] = 10
        varlist = ['rev_disponible', 'tva_taux_super_reduit',
                   'tva_taux_reduit', 'tva_taux_plein', 'tva_taux_intermediaire'
                   ]
        Wconcat = df_weighted_average_grouped(dataframe = df, groupe = 'niveau_vie_decile', varlist = varlist)

        # Example
        Wconcat['part_tva_tx_super_reduit'] = Wconcat['tva_taux_super_reduit'] / Wconcat['rev_disponible']
        Wconcat['part_tva_tx_reduit'] = Wconcat['tva_taux_reduit'] / Wconcat['rev_disponible']
        Wconcat['part_tva_tx_intermediaire'] = Wconcat['tva_taux_intermediaire'] / Wconcat['rev_disponible']
        Wconcat['part_tva_tx_plein'] = Wconcat['tva_taux_plein'] / Wconcat['rev_disponible']

        df_to_graph = Wconcat[['part_tva_tx_plein', 'part_tva_tx_super_reduit', 'part_tva_tx_reduit',
                               'part_tva_tx_intermediaire']]

        # Graphe par décile de revenu par uc de la ventilation des taux de taxation
        graph_builder_bar(df_to_graph)
    # Liste des variables que l'on veut simuler
    var_to_be_simulated = [
        'pondmen',
        'decuc',
        'niveau_vie_decile',
        ]
    # Merge des deux listes
    var_to_be_simulated += list_coicop12

    p = dict()
    df_to_graph = None
    for year in [2000, 2005, 2011]:
        # Constition d'une base de données agrégée par décile (= collapse en stata)
        simulation_data_frame = simulate_df(var_to_be_simulated = var_to_be_simulated, year = year)
        if year == 2011:
            simulation_data_frame.niveau_vie_decile[simulation_data_frame.decuc == 10] = 10
        simulation_data_frame['depenses_tot'] = 0
        for i in range(1, 13):
            simulation_data_frame['depenses_tot'] += simulation_data_frame['coicop12_{}'.format(i)]
        var_to_concat = list_coicop12 + ['depenses_tot']
        aggregates_data_frame = df_weighted_average_grouped(dataframe = simulation_data_frame,
            groupe = 'niveau_vie_decile', varlist = var_to_concat)

        for i in range(1, 13):
            aggregates_data_frame['part_coicop12_{}'.format(i)] = \
                aggregates_data_frame['coicop12_{}'.format(i)] / aggregates_data_frame['depenses_tot']

        appendable = aggregates_data_frame[['part_coicop12_{}'.format(i) for i in range(1, 13)]]

        graph_builder_bar(appendable)