# -*- 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()
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)