由getSplitsquantmod导入的矩阵根据符号的形状不同

问题描述

我正在尝试导入库存数据(拆分),但是我遇到了问题。 如果所有符号都包含拆分,则没有问题。但是,当其中一个没有分裂时,矩阵的形状将以不同的方式出现并且是错误的。

以下是我使用的代码:

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 (将#修改为@)