这是我正在运行的代码
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
中。
如何将“全局环境”中的数据框保存到列表中?
感谢您的帮助。.预先感谢!
答案 0 :(得分:1)
另一个选项是<h2><code>scroll (default)</code></h2>
<div style="background-attachment: scroll;" class="with-image">
<div class="content">
scroll scroll scroll scroll scroll scroll scroll scroll scroll scroll
</div>
</div>
<h2><code>fixed</code></h2>
<div style="background-attachment: fixed;" class="with-image">
<div class="content">
fixed fixed fixed fixed fixed fixed fixed fixed fixed fixed
</div>
</div>
<h2><code>local</code></h2>
<div style="background-attachment: local;" class="with-image">
<div class="content">
fixed fixed fixed fixed fixed fixed fixed fixed fixed fixed
</div>
</div>
<br class="extra-space">
lapply
来自library(quantmod)
Stocks <- lapply(companies, getSymbols, auto.assign = FALSE)
Stocks <- setNames(Stocks, companies)
auto.assign:应将结果加载到env中。如果为FALSE,则返回结果。从0.4-0开始,这与设置env = NULL相同。默认为TRUE
您可以使用?getSymbols
循环
for
答案 1 :(得分:0)
在我的quantmod版本(0.4.0)中,必须在函数的参数中设置env=NULL
,然后返回整个数据帧
答案 2 :(得分:-1)
使用以下参数作为getSymbols(i,auto.assign = FALSE)