首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >R systemfit:如何运行包含多个公式的列表

R systemfit:如何运行包含多个公式的列表
EN

Stack Overflow用户
提问于 2021-04-11 22:12:36
回答 1查看 24关注 0票数 0

我有一个广泛的股票回报及其滞后值的数据集。我想使用systemfit包进行SUR估计,但无法放入多个公式

我的数据集示例如下所示:

代码语言:javascript
复制
df = data.frame('stock.1' = c(0, - 0.2, 0.3, 0.5, 0.2), 'lag.stock.1'
= c(0.2,0,- 0.2, 0.3, 0.5), 'stock.2' = c(0, - 0.1, 0.4, 0.7, -0.1), 'lag.stock.2' = c(0.1,0, - 0.1, 0.4, 0.7))

如果我使用下面的代码,它可以工作

代码语言:javascript
复制
fitsur = systemfit(list(stock.1 ~ lag.stock.1, stock.2 ~ lag.stock.2), data = df)

但是我有很多股票,所以我首先创建了一个公式列表

代码语言:javascript
复制
stock.list = c("stock.1", "stock.2")
fm.list = list()
for (i in 1:length(stock.list)) {
  stock = stock.list[i]
  formula = paste0(stock,"~","lag.",stock)
  fm.list[i] = formula
}

使用此列表不起作用

代码语言:javascript
复制
fitsur = systemfit(fm.list, data = df)
Error in systemfit(fm.list, data = return.joindf) : 
  the list of argument 'formula' must contain only objects of class 'formula'

有没有正确使用公式列表的方法?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-04-11 22:28:33

使用as.formula函数:

代码语言:javascript
复制
formula = paste0(stock,"~","lag.",stock)
fm.list[[i]] = as.formula(formula)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67046003

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档