-1

我是 Stata 的初学者,我正在尝试创建循环回归,存储 DV 的系数,然后绘制这些。这段代码有意义吗?

forvalues i = 1/100 {
regress y x1 x2 x3 if ID==`i'
matrix b1 = e(x1) 
matrix b2 = e(x2) 
matrix b3 = e(x3) 
}

我之后立即使用 coefplot ,但它不起作用。任何帮助将不胜感激。

4

1 回答 1

3

这段代码有意义吗?正如你所说,它不起作用。

我看到三个错误。

  1. 每次回归后,系数不存储在e(x1)等等。这样的引用不是非法的,但它们只是返回缺失值。

  2. 同样的命令

    matrix b1 = e(x1)

只需创建一个具有单个缺失值的 1 x 1 矩阵。

  1. 每次循环时,您只需覆盖以前的矩阵。代码中的任何内容都不会累积结果,即使 #1 和 #2 是您想要的。

因此,一个自然的问题是:这段代码是从哪里来的?

有几种方法可以从 100 个回归中获取存储的系数。参见示例statsby和社区贡献rangestat(SSC)。

于 2020-12-02T23:52:28.650 回答