def get_bdf_aggregates(data_year = None): assert data_year is not None depenses = get_input_data_frame(data_year) depenses_by_grosposte = pandas.DataFrame() for grosposte in range(1, 13): if depenses_by_grosposte is None: depenses_by_grosposte = depenses['coicop12_{}'.format(grosposte)] else: depenses_by_grosposte = concat([depenses_by_grosposte, depenses['coicop12_{}'.format(grosposte)]], axis = 1) depenses_by_grosposte = concat([depenses_by_grosposte, depenses['pondmen']], axis = 1) grospostes = set(depenses_by_grosposte.columns) grospostes.remove('pondmen') bdf_aggregates_by_grosposte = pandas.DataFrame() for grosposte in grospostes: bdf_aggregates_by_grosposte.loc[grosposte, 'bdf_aggregates'] = ( depenses_by_grosposte[grosposte] * depenses_by_grosposte['pondmen'] ).sum() return bdf_aggregates_by_grosposte
# -*- coding: utf-8 -*- """ Created on Wed Aug 19 10:27:32 2015 @author: thomas.douenne """ from __future__ import division from openfisca_core.tools import assert_near from openfisca_france_indirect_taxation.examples.utils_example import get_input_data_frame for year in [2000, 2005, 2011]: aggregates_data_frame = get_input_data_frame(year) if year == 2000: df = aggregates_data_frame[ ['poste_coicop_722', 'coicop12_7', 'poste_coicop_711'] + [ 'poste_coicop_712', 'poste_coicop_713', 'poste_coicop_721', 'poste_coicop_723' ] + [ 'poste_coicop_724', 'poste_coicop_731', 'poste_coicop_732', 'poste_coicop_733' ] + ['poste_coicop_734', 'poste_coicop_736']].copy() df['check'] = (df['poste_coicop_711'] + df['poste_coicop_712'] + df['poste_coicop_713'] + df['poste_coicop_721'] + df['poste_coicop_722'] + df['poste_coicop_723'] + df['poste_coicop_724'] + df['poste_coicop_731'] + df['poste_coicop_732'] + df['poste_coicop_733'] + df['poste_coicop_734'] + df['poste_coicop_736'] - df['coicop12_7']) else:
# -*- coding: utf-8 -*- """ Created on Wed Aug 19 10:27:32 2015 @author: thomas.douenne """ from __future__ import division from openfisca_core.tools import assert_near from openfisca_france_indirect_taxation.examples.utils_example import get_input_data_frame for year in [2000, 2005, 2011]: aggregates_data_frame = get_input_data_frame(year) if year == 2000: df = aggregates_data_frame[['poste_coicop_722', 'coicop12_7', 'poste_coicop_711'] + ['poste_coicop_712', 'poste_coicop_713', 'poste_coicop_721', 'poste_coicop_723'] + ['poste_coicop_724', 'poste_coicop_731', 'poste_coicop_732', 'poste_coicop_733'] + ['poste_coicop_734', 'poste_coicop_736']].copy() df['check'] = ( df['poste_coicop_711'] + df['poste_coicop_712'] + df['poste_coicop_713'] + df['poste_coicop_721'] + df['poste_coicop_722'] + df['poste_coicop_723'] + df['poste_coicop_724'] + df['poste_coicop_731'] + df['poste_coicop_732'] + df['poste_coicop_733'] + df['poste_coicop_734'] + df['poste_coicop_736'] - df['coicop12_7'] ) else: df = aggregates_data_frame[['poste_coicop_722', 'coicop12_7', 'poste_coicop_711'] + ['poste_coicop_712', 'poste_coicop_735', 'poste_coicop_713', 'poste_coicop_721'] + ['poste_coicop_723', 'poste_coicop_724', 'poste_coicop_731', 'poste_coicop_732'] +
from __future__ import division import pandas as pd import numpy as np from pandas import concat from openfisca_france_indirect_taxation.examples.utils_example import get_input_data_frame from openfisca_france_indirect_taxation.almost_ideal_demand_system.aids_price_index_builder import \ df_indice_prix_produit # Now that we have our price indexes, we construct a dataframe with the rest of the information data_frame_for_reg = None for year in [2000, 2005, 2011]: aggregates_data_frame = get_input_data_frame(2011) aggregates_data_frame['depenses_tot'] = 0 for i in range(1, 13): aggregates_data_frame['depenses_tot'] += aggregates_data_frame['coicop12_{}'.format(i)] produits = [column for column in aggregates_data_frame.columns if column.isdigit()] data = aggregates_data_frame[produits + ['vag']].copy() data.index.name = 'ident_men' data.reset_index(inplace = True) df = pd.melt(data, id_vars = ['vag', 'ident_men'], value_vars=produits, value_name = 'depense_bien', var_name = 'bien') df_indice_prix_produit = df_indice_prix_produit[['indice_prix_produit'] + ['prix'] + ['temps'] + ['mois']]