简而言之,如何将DataFrame的索引号与单独的DataFrame的列号匹配?
我正在尝试这样做^,因为DataFrame A拥有一份投资组合列表,该投资组合中每只基金的权重以及相应的指标(收益,波动率等),而DataFrame B则拥有每一项的每日累计收益DataFrame A中概述的投资组合。请参见下面的每个摘要...
DataFrame A
PSGAX MACGX CPOAX MSFBX ... VINIX Returns Volatility Sharpe Ratio
3 0.34 0.000 0.0 0.272 ... 0.15 0.130 0.097 1.031
2 0.00 0.000 0.0 0.000 ... 0.15 0.088 0.081 0.716
0 0.00 0.612 0.0 0.068 ... 0.15 0.097 0.145 0.462
1 0.00 0.000 0.0 0.000 ... 0.15 0.075 0.155 0.290
DataFrame B
0 1 2 3
Date
2014-10-28 0.000000 0.000000 0.000000 0.000000
2014-10-29 0.000000 0.000000 0.000000 0.000000
2014-10-30 10064.705138 8326.212482 7397.407442 10071.353993
2014-10-31 10201.869986 8192.885999 7445.309580 10188.468770
2014-11-03 10184.040340 8272.103934 7447.680945 10148.797890
2014-11-04 10167.215094 8139.644423 7445.886503 10167.811613
2014-11-05 10070.419821 8009.376679 7467.766390 10212.995583
2014-11-06 10169.867499 8145.063117 7479.148990 10237.356046
2014-11-07 10157.369105 8388.279532 7479.980665 10201.779090
2014-11-10 10203.803157 8195.931455 7489.981792 10242.488798
2014-11-11 10215.416983 8344.922782 7488.531872 10274.749752
2014-11-12 10241.533449 8329.066481 7485.325991 10289.547296
......................................................................
2019-10-21 15202.051493 12506.156321 14809.452786 18902.729085
2019-10-22 14895.540671 12469.054343 14759.975126 18747.214047
2019-10-23 14921.969830 12519.182867 14765.817287 18799.355736
2019-10-24 15018.618443 12670.871976 14810.664506 18882.446150
2019-10-25 15104.878608 12723.237235 14833.833249 18928.260160
如您所见,DataFrame A按Sharpe Ratio排序,这就是索引不是按数字顺序的原因。在这种情况下,DataFrame B的第三列包含“最佳”投资组合的累积日收益,如DataFrame A所示。
1)那么我如何知道DataFrame B的“最佳”列(在本例中为第三列),知道它是DataFrame A中的第一行,并且其索引值与其在DataFrame B中的位置相匹配? / strong>
2)如果我想以类似的方式称呼第四名“最佳”投资组合,那该怎么办?