R 使用名称(字符串)列表调用(xts)对象/数据集/变量

R 使用名称(字符串)列表调用(xts)对象/数据集/变量,r,string,loops,variables,R,String,Loops,Variables,这可能是一个非常简单的问题,但我在网上查了好几个小时都不知道——这就是为什么我在这里问这个问题 我有一个带有股票符号(如DAI.F、PAH3.F、GRU.F等)的csv文件。使用包quantmod,我可以通过Yahoo获得历史股票数据,并且在我的工作区中为每个股票符号创建一个与符号同名的xts对象 我的问题是,我不知道如何通过csv文件的内容循环这些xts对象。名称作为字符串存储在符号\u监视列表中 代码的最后一行是问题:stock您可以使用mget获取列表中的所有符号 list_of_symb

这可能是一个非常简单的问题,但我在网上查了好几个小时都不知道——这就是为什么我在这里问这个问题

我有一个带有股票符号(如DAI.F、PAH3.F、GRU.F等)的csv文件。使用包quantmod,我可以通过Yahoo获得历史股票数据,并且在我的工作区中为每个股票符号创建一个与符号同名的xts对象

我的问题是,我不知道如何通过csv文件的内容循环这些xts对象。名称作为字符串存储在
符号\u监视列表中


代码的最后一行是问题:
stock您可以使用
mget
获取列表中的所有符号

list_of_symbols <- mget(symbols_watchlist)

使用
for
循环,您可以使用
get
逐个执行此操作

for (i in symbols_watchlist) {
   stock <- get(i)
   #Do something with stock
}
用于(符号中的i\u观察列表){

stock你必须决定你想要什么作为你的最终结果,以及使用哪个框架。你使用tidyquant,但使用quantmod中的
getSymbols
来获取数据。你可以获取一个xts对象列表或一个包含所有数据的data.frame

使用quantmod(无需tidyquant),生成xts对象列表:

library(quantmod)

symbols_watchlist <- c("DAI.F", "GRU.F", "IQ8.F", "PAH3.F")
start_date_5year <- Sys.Date()-1826
end_date <- Sys.Date()

stocks <- lapply(symbols_watchlist, getSymbols, from = start_date_5year, to = end_date, auto.asssign = FALSE)
names(stocks) <- symbols_watchlist
库(quantmod)

感谢您的提示!
for (i in symbols_watchlist) {
   stock <- get(i)
   #Do something with stock
}
library(quantmod)

symbols_watchlist <- c("DAI.F", "GRU.F", "IQ8.F", "PAH3.F")
start_date_5year <- Sys.Date()-1826
end_date <- Sys.Date()

stocks <- lapply(symbols_watchlist, getSymbols, from = start_date_5year, to = end_date, auto.asssign = FALSE)
names(stocks) <- symbols_watchlist
library(tidyquant)

df_stocks <- tq_get(symbols_watchlist, from = start_date_5year, to = end_date)