【发布时间】:2018-02-13 01:01:51
【问题描述】:
我试图将来自模拟回归的系数存储在下面代码中的变量 b1 和 b2 中,但我不太确定如何去做。我已经尝试使用rclass() 函数中的return scalar b1 = _b[x1] 和return scalar b2 = _b[x2],但这不起作用。然后我尝试使用eclass() 函数中的scalar b1 = e(x1) 和scalar b2 = e(x2),但也没有成功。
目标是使用这些存储的系数来估计一些值(比如 rhat)并测试 rhat 的标准误差。
下面是我的代码:
program montecarlo2, eclass
clear
version 11
drop _all
set obs 20
gen x1 = rchi2(4) - 4
gen x2 = (runiform(1,2) + 3.5)^2
gen u = 0.3*rnormal(0,25) + 0.7*rnormal(0,5)
gen y = 1.3*x1 + 0.7*x2 + 0.5*u
* OLS Model
regress y x1 x2
scalar b1 = e(x1)
scalar b2 = e(x2)
end
我想做类似的事情,
rhat = b1 + b2,然后测试rhat的标准误。
【问题讨论】:
-
这里有很多幻想语法,例如
e(x1)。但是scalar b1 = _b[x1]等可以在程序内或之后工作。如果您只想访问系数估计值,您是否需要声明程序eclass或rclass尚不清楚。无论如何,CV 都跑题了,所以我投票赞成迁移到 SO。请参阅 CV 帮助中心中有关软件特定问题的帮助。 . -
感谢尼克的澄清!现在可以了。但是一个快速跟进的问题,我试图将标量存储在一个变量中,例如 rhat。我正在尝试 rhat = display b1 + b2,但我收到一条错误消息,提示无法识别该命令。有关如何解决此问题的任何建议?
-
使用 lincom 命令获取总和,然后您可以将其用于假设检验。无需将其存储为变量。
标签: regression least-squares stata