【发布时间】:2020-03-30 10:15:19
【问题描述】:
我正在尝试从这篇文章中运行这段代码:looping with iterations over two lists of variables for a multiple regression in R 使用修改后的变量和数据框名称,因为它似乎完全符合我的要求,并且使用了非常相似的数据集。但是,它一直给我一个错误,我不知道为什么,所以如果有人能帮助我理解错误或相应的代码行,我将不胜感激,这样我就可以尝试找出问题所在。
for(i in 1:n) {
vars = names(output)[names(output) %in% paste0(c(".PRE", ".POST"), i)]
models[[as.character(i)]] = lm(paste("growth_rate ~ ", paste(vars, collapse=" + ")),
data = output)
}
Error in parse(text = x, keep.source = FALSE) :
<text>:2:0: unexpected end of input
1: growth_rate ~
^
除了我的“RDPI_T”和“DRY_T”变量的顺序是交替的(在这种情况下我认为这不重要)之外,我的数据集看起来几乎就像上面提到的帖子中给出的那个。我拥有的类似变量是输出数据集中的 69 个称为 id1.PRE、id2.PRE ... id69.PRE 的 PRE 变量以及称为 id1.POST、id2.POST ... id69.POST 的 69 个 POST 变量。此外,growth_rate 位于名为 output 的同一数据集中。
此外,我还想添加另外 2 个常规且不来自列表的自变量:国家和年份,但我不确定如何在此处合并?
任何帮助将不胜感激。谢谢!
【问题讨论】:
-
循环模型进行 Wald 检验是统计上的不当行为。您需要以最糟糕的方式进行统计咨询。
-
我正在复制一篇被引用超过 1000 次并发表在 The Quarterly Journal of Economics 上的论文,所以我并没有真正质疑统计数据,而是试图找到一种方法来做到这一点。我很高兴听到你的建议,而不是关于我多么需要统计咨询的人生教训。
-
是否适当考虑了此类过程中产生的多重比较问题?
-
恐怕他们在论文中没有提到类似的东西。但他们在运行 69 个模型后得出了一个 chi2 值和一个 p 值。基本上他们想使用 69 个回归模型来比较 id.PRE 是否与 id.POST 相同(数据在我之前的帖子中解释:stackoverflow.com/questions/59150321/…)以得出一个总体结论。
标签: r loops regression linear-regression