我试图从整个数据帧(alldata.index)中减去一列(alldata $ T3M.yld),如果可能的话,在一个步骤中包含两列。我怎么能这样做?
我可以这样做,
R.index = alldata.index$SPX - alldata$T3M.yld
R.index2 = alldata.index$RUS - alldata$T3M.yld
但我希望它更像是
R.index = alldata.index - alldata$T3M.yld
此行不起作用,给我一个错误:
-.default
中的错误(alldata.index,alldata $ T3M.yld):
不一致的数组
以下是我使用的数据:
> head(alldata.index)
SPX RUS
2013-09-03 4.155575e-03 0.0052881849
2013-09-04 8.084188e-03 0.0091290315
2013-09-05 1.209132e-03 0.0030278274
2013-09-06 5.442973e-05 0.0008357704
2013-09-09 9.943282e-03 0.0159279413
2013-09-10 7.318940e-03 0.0091731686
> head(alldata$T3M.yld)
T3M.yld
2013-09-01 NA
2013-09-03 2e-04
2013-09-04 2e-04
2013-09-05 2e-04
2013-09-06 2e-04
2013-09-09 2e-04
所以我想要SPX-T3M.yld和RUS-T3M.yld并将其全部存储在R.index中。希望我正在尝试做的事情是有意义的。
P.S。 我不想单独做它然后将它组合到一个数据帧的原因是因为我尝试自动化这个过程并且我将不同的数据传递给alldata.index,所以下次我可能有5列而不是2。
如果您有任何问题,请告诉我,以便我澄清一下。我在谷歌找不到解决方案(令人惊讶)。谢谢。