要在Stata中比较两个回归模型中的系数a1和a2的大小,你不能直接在两个独立运行的回归模型之间做这样的比较,因为这样得到的标准误和其他统计属性不会正确反映两个估计值之间的相关性。但是你可以通过一些方法来实现这个目标。
一种常见的方法是使用“联合检验”(joint test)或者叫做“约束检验”。这通常涉及到在同一个回归方程中同时包含x1和x2,并且对它们的系数设置一个约束,然后测试这个约束是否可以被数据所支持。但是,在你的情况下,因为x1和x2有可能是相关的变量(比如,一些学生可能是体育特长生同时也是艺术特长生),这可能会导致共线性问题。
另一种方法是在同一个模型中同时包含两个解释变量,并直接比较它们的系数大小。然而,这种方法依赖于假设这两个解释变量在模型中的作用是独立且可加的。
更具体一点,你可以使用以下命令:
```stata
regress y x1 x2 控制变量
test [x1] = [x2]
```
这将同时回归y关于x1、x2和控制变量,并且运行一个H0: a1=a2的检验。但是这个方法在x1和x2相关性较高时可能不是最佳选择。
更一般的方法是使用`suest`命令,它允许你在保持估计结果一致的情况下比较来自不同模型的系数。
```stata
regress y x1 控制变量, vce(cluster id)
est store model1
regress y x2 控制变量, vce(cluster id)
est store model2
suest model1 model2
test [model1_mean]_b[x1]=[model2_mean]_b[x2]
```
请注意,在使用`suest`命令之前,你可能需要使用`cluster`选项来校正标准误(如果你的模型中有聚类问题的话)。同时在比较系数时要确保两个变量是在相同的尺度上测量的。
最后,请根据你的数据和模型的具体要求调整上述代码。例如,如果`控制变量`是一个具体的列表,你需要列出所有的变量名。
```stata
regress y x1 控制变量_list, vce(cluster id)
est store model1
regress y x2 控制变量_list, vce(cluster id)
est store model2
suest model1 model2
test [model1_mean]_b[x1]=[model2_mean]_b[x2]
```
此文本由CAIE学术大模型生成,添加下方二维码,优先体验功能试用