我想连续绑定每日和每周数据(没有NA)我正在使用此代码用于该目的,但我有两个问题。连续每日和每周数据与R?
library(quantmod)
aapl=getSymbols("AAPL",from="2015-01-01",auto.assign=F)
d_aapl=Cl(aapl)/Op(aapl)
head(d_aapl)
w_aapl=to.weekly(d_aapl)
head(w_aapl)
res=cbind(d_aapl,Cl(w_aapl))
head(res,8)
的第一个问题是用w_aapl=to.weekly(d_aapl)
逻辑它应该只仅d_aapl
可变的,但其它执行对所有列除了体积和调整为接近执行to.weekly
功能。这里发生了什么?
d_aapl.Open d_aapl.High d_aapl.Low d_aapl.Close
2015-01-02 0.9815064 0.9815064 0.9815064 0.9815064
2015-01-09 0.9811617 1.0243522 0.9811617 0.9941422
2015-01-16 0.9702487 1.0069699 0.9702487 0.9902831
2015-01-23 1.0081603 1.0194087 1.0055072 1.0060552
2015-01-30 0.9943731 1.0221802 0.9708237 0.9895270
2015-02-06 1.0049131 1.0089451 0.9909182 0.9909182
第二个问题是输出res
。柱结合后我预计一些日子将NA
被填充,而是的NA
我想用以前的数据
curren result
AAPL.Close d_aapl.Close
2015-01-02 0.9815064 0.9815064
2015-01-05 0.9811617 NA
2015-01-06 0.9973719 NA
2015-01-07 1.0051306 NA
2015-01-08 1.0243522 NA
2015-01-09 0.9941422 0.9941422
2015-01-12 0.9702487 NA
2015-01-13 0.9891412 NA
wanted
AAPL.Close d_aapl.Close
2015-01-02 0.9815064 0.9815064
2015-01-05 0.9811617 0.9815064
2015-01-06 0.9973719 0.9815064
2015-01-07 1.0051306 0.9815064
2015-01-08 1.0243522 0.9815064
2015-01-09 0.9941422 0.9941422
2015-01-12 0.9702487 0.9941422
2015-01-13 0.9891412 0.9941422
怎么办呢?
使用'动物园:: na.locf ()'或'tidyr :: fill()'来解决第二个问题。 – Psidom
为你的第一个问题设置OHLC参数:'to.weekly(d_aapl,OHLC = FALSE)'。见'?to.weekly'。 –