# -*- coding: utf-8 -*-
"""
Created on Wed Feb 10 18:40:27 2016

@author: thomas.douenne
"""

from __future__ import division

from openfisca_france_indirect_taxation.examples.utils_example import simulate

simulated_variables = [
    'pondmen',
    'decuc',
    'depenses_diesel_ht',
    'depenses_diesel_htva',
    'diesel_ticpe',
    'depenses_diesel',
    'depenses_diesel_recalculees'
    ]
# Merge des deux listes

for year in [2000]:
    # Constition d'une base de données agrégée par décile (= collapse en stata)
    df = simulate(simulated_variables = simulated_variables, year = year)
    df['check_diesel_ht'] = df['depenses_diesel_ht'] - (df['depenses_diesel_htva'] - df['diesel_ticpe'])
    assert (df['check_diesel_ht'] == 0).any()
    df['check_diesel_recalcule'] = df['depenses_diesel'] - df['depenses_diesel_recalculees']
    assert (df['check_diesel_recalcule'] == 0).any()
Ejemplo n.º 2
0
    list_coicop12 = []
    for coicop12_index in range(1, 13):
        list_coicop12.append('coicop12_{}'.format(coicop12_index))

    simulated_variables = [
        'pondmen',
        'niveau_vie_decile',
        'somme_coicop12',
    ]

    simulated_variables += list_coicop12

    p = dict()
    df_to_graph = None
    for year in [2000, 2005, 2011]:
        simulation_data_frame = simulate(
            simulated_variables=simulated_variables, year=year)
        aggregates_data_frame = df_weighted_average_grouped(
            dataframe=simulation_data_frame,
            groupe='niveau_vie_decile',
            varlist=simulated_variables)

        aggregates_data_frame[year] = aggregates_data_frame[
            'coicop12_4'] / aggregates_data_frame['somme_coicop12']
        appendable = aggregates_data_frame[year]
        if df_to_graph is not None:
            df_to_graph = concat([df_to_graph, appendable], axis=1)
        else:
            df_to_graph = appendable

    graph_builder_line_percent(df_to_graph, 1, 1)
    list_coicop12 = ['coicop12_2']
    #    for coicop12_index in range(1, 13):
    #        list_coicop12.append('coicop12_{}'.format(coicop12_index))
    # Liste des variables que l'on veut simuler
    simulated_variables = [
        'pondmen', 'decuc', 'niveau_vie_decile', 'revtot', 'niveau_de_vie',
        'rev_disponible', 'depenses_cigarettes', 'depenses_cigares',
        'depenses_tabac_a_rouler', 'depenses_alcools_forts', 'depenses_vin',
        'depenses_biere'
    ]
    # Merge des deux listes
    simulated_variables += list_coicop12

    for year in [2000, 2005, 2011]:
        # Constition d'une base de données agrégée par décile (= collapse en stata)
        df = simulate(simulated_variables=simulated_variables, year=year)
        if year == 2011:
            df.niveau_vie_decile[df.decuc == 10] = 10

        var_to_concat = list_coicop12 + ['rev_disponible']
        Wconcat = df_weighted_average_grouped(dataframe=df,
                                              groupe='niveau_vie_decile',
                                              varlist=simulated_variables)
        list_alcool_tabac = []
        Wconcat['part_alcool'] = \
            (Wconcat['depenses_alcools_forts'] + Wconcat['depenses_vin'] + Wconcat['depenses_biere']) \
            / Wconcat['rev_disponible']
        list_alcool_tabac.append('part_alcool')
        Wconcat['part_tabac'] = \
            (Wconcat['depenses_cigarettes'] + Wconcat['depenses_cigares'] +
            Wconcat['depenses_tabac_a_rouler']) / Wconcat['rev_disponible']
    import sys
    logging.basicConfig(level = logging.INFO, stream = sys.stdout)

    list_coicop12 = []
    for coicop12_index in range(1, 13):
        list_coicop12.append('coicop12_{}'.format(coicop12_index))

    simulated_variables = [
        'pondmen',
        'niveau_vie_decile',
        'somme_coicop12',
        ]

    simulated_variables += list_coicop12

    p = dict()
    df_to_graph = None
    for year in [2000, 2005, 2011]:
        simulation_data_frame = simulate(simulated_variables = simulated_variables, year = year)
        aggregates_data_frame = df_weighted_average_grouped(dataframe = simulation_data_frame,
            groupe = 'niveau_vie_decile', varlist = simulated_variables)

        aggregates_data_frame[year] = aggregates_data_frame['coicop12_4'] / aggregates_data_frame['somme_coicop12']
        appendable = aggregates_data_frame[year]
        if df_to_graph is not None:
            df_to_graph = concat([df_to_graph, appendable], axis = 1)
        else:
            df_to_graph = appendable

    graph_builder_line_percent(df_to_graph, 1, 1)