这是我正在运行的代码
library(quantmod)
library(tseries)
Stocks={}
companies=c("IOC.BO","BPCL.BO","ONGC.BO","HINDPETRO.BO","GAIL.BO")
for(i in companies){
Stocks[i]=getSymbols(i)
}
我正在尝试获取从以下位置获得的数据帧列表getSymbols
存储在Stocks
。
问题是getSymbols
直接将数据帧保存到全局环境中Stocks
只保存其中的字符companies
在列表中。
如何将全局环境中的数据框保存到列表中?
如有任何帮助,我们将不胜感激..提前致谢!
另一种选择是lapply
library(quantmod)
Stocks <- lapply(companies, getSymbols, auto.assign = FALSE)
Stocks <- setNames(Stocks, companies)
from ?getSymbols
auto.assign :是否应将结果加载到 env 如果为 FALSE,则返回结果。从 0.4-0 开始,这与设置 env=NULL 相同。默认为 TRUE
Using a for
循环你可以做
companies <- c("IOC.BO", "BPCL.BO", "ONGC.BO", "HINDPETRO.BO", "GAIL.BO")
Stocks <- vector("list", length(companies))
for(i in seq_along(companies)){
Stocks[[i]] <- getSymbols(name, auto.assign = FALSE)
}
Stocks
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)