从多个 Quandl 代码在 R 中创建一个 xts 对象
Create an xts object in R from multiple Quandl codes
我试图同时将多个 Quandl 代码提取到 R 中,并希望以包含数据的 [i] 列(加上日期列)的单个 xts 对象结束。
我创建的用于从 Quandl 调用数据的函数似乎没问题,但我需要有关创建 xts 对象的语法方面的帮助。这是我目前所拥有的:
# Build vector of model holdings
holdings <- c("VTI","VEA","VWO","LQD","BND","TLT","VNQ","GLD","VGSH")
# Function to fetch each holding as an xts object, adjusted close returns
getQholdings <- function(ticker){
codes <- paste("EOD/",ticker,".11",sep="")
for(i in 1:length(ticker)){
???? <- Quandl(codes[i],type="xts",transformation="rdiff",
start_date="2013-12-31",collapse="monthly",
force_irregular=TRUE)
}}
我在问号所在的地方需要帮助,我认为这应该是某种函数,用于在 "for" 函数的每次迭代中逐步构建 xts 对象。
您不需要构建 xts 对象 - Quandl
函数会为您完成。
包含 2 个代码的示例:
codes <- c("EOD/VTI.11", "EOD/VEA.11")
x1 <- Quandl(codes,type="xts",transformation="rdiff",
start_date="2013-12-31",collapse="monthly",
force_irregular=TRUE)
head(x1)
结果:
EOD.VTI - Adj_Close EOD.VEA - Adj_Close
2014-01-31 -0.031693078 -0.052063340
2014-02-28 0.048664944 0.059478613
2014-03-31 0.005078150 -0.003653885
2014-04-30 0.000615574 0.015749939
2014-05-31 0.021019174 0.017652672
2014-06-30 0.026241859 0.010426937
合并时间序列
但是如果你已经有两个时间序列那么使用merge
:
x1 <- Quandl("EOD/VTI.11", type="xts", ......
x2 <- Quandl("EOD/VEA.11", type="xts", ......
x <- merge(x1, x2)
merge
on xts 是基于时间序列的时间索引。
我试图同时将多个 Quandl 代码提取到 R 中,并希望以包含数据的 [i] 列(加上日期列)的单个 xts 对象结束。
我创建的用于从 Quandl 调用数据的函数似乎没问题,但我需要有关创建 xts 对象的语法方面的帮助。这是我目前所拥有的:
# Build vector of model holdings
holdings <- c("VTI","VEA","VWO","LQD","BND","TLT","VNQ","GLD","VGSH")
# Function to fetch each holding as an xts object, adjusted close returns
getQholdings <- function(ticker){
codes <- paste("EOD/",ticker,".11",sep="")
for(i in 1:length(ticker)){
???? <- Quandl(codes[i],type="xts",transformation="rdiff",
start_date="2013-12-31",collapse="monthly",
force_irregular=TRUE)
}}
我在问号所在的地方需要帮助,我认为这应该是某种函数,用于在 "for" 函数的每次迭代中逐步构建 xts 对象。
您不需要构建 xts 对象 - Quandl
函数会为您完成。
包含 2 个代码的示例:
codes <- c("EOD/VTI.11", "EOD/VEA.11")
x1 <- Quandl(codes,type="xts",transformation="rdiff",
start_date="2013-12-31",collapse="monthly",
force_irregular=TRUE)
head(x1)
结果:
EOD.VTI - Adj_Close EOD.VEA - Adj_Close
2014-01-31 -0.031693078 -0.052063340
2014-02-28 0.048664944 0.059478613
2014-03-31 0.005078150 -0.003653885
2014-04-30 0.000615574 0.015749939
2014-05-31 0.021019174 0.017652672
2014-06-30 0.026241859 0.010426937
合并时间序列
但是如果你已经有两个时间序列那么使用merge
:
x1 <- Quandl("EOD/VTI.11", type="xts", ......
x2 <- Quandl("EOD/VEA.11", type="xts", ......
x <- merge(x1, x2)
merge
on xts 是基于时间序列的时间索引。