问题描述
我正在尝试导入库存数据(拆分),但是我遇到了问题。 如果所有符号都包含拆分,则没有问题。但是,当其中一个没有分裂时,矩阵的形状将以不同的方式出现并且是错误的。
以下是我使用的代码:
library(quantmod)
Tick <- c("AA","ARGO")
split_test <- Reduce(merge,lapply(Tick,function(x) {
tryCatch({
getSplits(x,from= "2016-01-04",to="2017-03-09",src="yahoo")
},error = function(e) {}
)
}))
结果很好:
AA.spl ARGO.spl
2016-05-27 N/A 0.9091
2016-10-06 3.000 N/A
2016-11-01 0.801 N/A
问题是,如果Tick包含未拆分的“ A”,则结果将完全不同且错误:
Tick <- c("A","AA","ARGO")
x AA.spl ARGO.spl
1 N/A 3.000 0.9091
2 N/A 0.801 0.9091
日期不再显示,并且值也不正确(重复相同的数字)。 即使股票没有分割,我如何获得像第一个一样的结果?如果可能的话,我想将“ A”显示为N / A:
A.spl AA.spl ARGO.spl
2016-05-27 N/A N/A 0.9091
2016-10-06 N/A 3.000 N/A
2016-11-01 N/A 0.801 N/A
getDividends
Tick <- c("A","AADR","AAN","AAP","AAT")
Test <-
lapply(Tick,function(x) {
try(getDividends(x,to="2016-03-15",src="yahoo"),silent = TRUE)
})
names(Test) <- Tick
# convert NA to xts object with date < 1900
Test <-
lapply(Test,function(x) {
if (identical(x,NA)) xts(NA,.Date(-4e4)) else x
})
# merge and remove pre-1900 date
Test <- Reduce(merge,Test)["1900/"]
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)