我有三个DataFrame。一种用于每日外汇价格d_fx
,一种用于每日资产净值d
,一种用于参考数据m
。以下示例:
EUR GBP USD
date
2012-01-01 1.2961 1.5543 1.0
2012-01-02 1.2934 1.5514 1.0
2012-01-03 1.3050 1.5649 1.0
2012-01-04 1.2943 1.5620 1.0
date Assets
BUTBERI BH Equity 2012-01-01 14.32000
2012-01-02 14.32000
2012-01-03 14.32000
2012-01-04 14.34000
2012-01-05 14.34000
JGGFLEU LX Equity 2012-01-01 19.88656
2012-01-02 20.01639
2012-01-03 19.99365
2012-01-04 20.31770
2012-01-05 20.35174
ICEPROB FH Equity 2012-01-01 NaN
2012-01-02 NaN
2012-01-03 NaN
2012-01-04 NaN
2012-01-05 NaN
FUND_TOTAL_ASSETS_CRNCY
BUTBERI BH Equity USD
ICEPROB FH Equity EUR
JGGFLEU LX Equity EUR
我正在尝试使用.loc在DataFrame d
中设置列,但没有成功。使用以下内容:
idx = pd.IndexSlice
d.loc[idx[:,:], 'FX_price'] =
d_fx.loc[d.index.get_level_values(1),
m.loc[d.index.get_level_values(0)].values]
该脚本已正确完成,但FX_price
中的所有值均为NaN
。有一个更好的方法吗?我做错了什么吗?
非常感谢。 ` 修改的数据框