Ejemplo n.º 1
0
def produce_agg_transfert_flux(simulation=simulation, year_list = range(1996, 2050, 10), year_min=1996):
    
    print 'entering generation of aggregated flux of payments '
    tmp = simulation.cohorts.loc[:, ['net_transfers', 'pop', 'dsct']]
    tmp['running_transfers'] = tmp['net_transfers']
    tmp['net_transfers'] *= tmp['dsct']*tmp['pop']

    tmp_2 = simulation.cohorts_alt.loc[:, ['net_transfers', 'pop', 'dsct']]
    tmp_2['running_transfers'] = tmp_2['net_transfers']
    tmp_2['net_transfers'] *= tmp_2['dsct']*tmp_2['pop']
    print type(str(str(xls)+'\agre_agg.xlsx'))

    for year in year_list:
        flux_df = AccountingCohorts(tmp).extract_generation(year=year, typ='net_transfers', age=0)
        flux_df = flux_df.xs(0, level='sex')
        flux_df.columns = [year]
        print year

        flux_df_alt = AccountingCohorts(tmp_2).extract_generation(year=year, typ='net_transfers', age=0)
        flux_df_alt = flux_df_alt.xs(0, level='sex')
        flux_df_alt.columns = [str(year)+'_alt']
        
        flux_df = concat([flux_df, flux_df_alt], axis=1)#, ignore_index=True)
        flux_df[year] *= ((1+simulation.discount_rate)/(1+simulation.growth_rate))**(year - year_min)
        flux_df[str(year)+'_alt'] *= ((1+simulation.discount_rate_alt)/(1+simulation.growth_rate_alt))**(year - year_min)
        print flux_df.head()
    
        flux_df.to_excel(xls+'\_combine_agg_'+str(year)+'.xlsx', 'flux')
    gc.collect()
Ejemplo n.º 2
0
def produce_agg_transfert_flux(simulation=simulation,
                               year_list=range(1996, 2050, 10),
                               year_min=1996):

    tmp = simulation.cohorts.loc[:, ['net_transfers', 'pop', 'dsct']]
    tmp['running_transfers'] = tmp['net_transfers']
    tmp['net_transfers'] *= tmp['dsct'] * tmp['pop']

    tmp_2 = simulation.cohorts_alt.loc[:, ['net_transfers', 'pop', 'dsct']]
    tmp_2['running_transfers'] = tmp_2['net_transfers']
    tmp_2['net_transfers'] *= tmp_2['dsct'] * tmp_2['pop']

    for year in year_list:
        flux_df = AccountingCohorts(tmp).extract_generation(
            year=year, typ='net_transfers', age=0)
        flux_df = flux_df.xs(0, level='sex')
        flux_df.columns = [year]
        print year

        flux_df_alt = AccountingCohorts(tmp_2).extract_generation(
            year=year, typ='net_transfers', age=0)
        flux_df_alt = flux_df_alt.xs(0, level='sex')
        flux_df_alt.columns = [str(year) + '_alt']

        flux_df = concat([flux_df, flux_df_alt], axis=1)  #, ignore_index=True)
        flux_df[year] *= ((1 + simulation.discount_rate) /
                          (1 + simulation.growth_rate))**(year - year_min)
        flux_df[str(year) +
                '_alt'] *= ((1 + simulation.discount_rate_alt) /
                            (1 + simulation.growth_rate_alt))**(year -
                                                                year_min)
        print flux_df.head()

        flux_df.to_excel(str(xls) + str(year) + '_ESP_agg.xlsx', 'flux')
    gc.collect()