我想連續綁定每日和每週數據(沒有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'。 –