Я не уверен, что это уместный вопрос, учитывая, как конкретно c это. Не стесняйтесь понижать - я закрою его.
Я использую python для расчета ряда доходностей по развитым рынкам, взвешенных по ВВП по ППС. Проблема заключается в том, что фрейм с ВВП не совпадает с размером фрейма доходности.
следующее верно: но я уверен, что это очень неэффективно и очень далеко от лучших практик. Я надеялся получить несколько советов по более качественной реализации.
Заранее спасибо.
#Match GDP data frame to yields data frame
gdp_weights_2 = yields.copy()
gdp_weights_2.loc[:] = 0
gdp_weights_2.loc[:] = gdp_weights.loc[:]
gdp_weights_2.fillna(method='ffill', inplace = True)
gdp_weights_2.fillna(method = 'backfill', inplace = True)
gdp_weights_2.columns = gdp_weights.columns
gdp_weights = gdp_weights_2
#weights for normalisation
gdp_weights_sum = gdp_weights.sum(axis=1)
#weighted Yields
wtd_yields = yields.copy()
for row in range(len(wtd_yields)):
for column in range(len(list(wtd_yields))):
wtd_yields.iloc[row,column] = yields.iloc[row,column] * gdp_weights.iloc[row,column] * ( 1/ gdp_weights_sum.iloc[row] )
#output
DM_yield = wtd_yields.sum(axis=1)