在你的命令中使用`vce(cluster code)`选项来处理集群标准误,这确实是正确的做法以控制某些类型的异质性或相关性。但是,正如你所看到的错误消息所示,当使用cluster-robust标准误差时,Stata中的`estat overid`命令无法执行过度识别检验(Sargan/Hansen J test)。
这是因为Sargan和Hansen J tests在假设独立且同质方差(iid)的扰动项下工作得最好。Cluster robust SEs破坏了iid假定,因此这些检验不适用或不可靠。
如果你确实需要进行过度识别检验,可能有几种方法可以尝试:
1. **尝试没有cluster robust标准误差**:这将允许你运行Sargan测试,但它对扰动项的异质性和相关性的假设更为严格。
```stata
xi:ivregress 2sls mmx_lncarbon $cv (mmx_digital=mmx_iv3 mmx_iv4 ) i.ind i.year, vce(unclustered)
```
2. **使用其他估计方法**:你可以考虑使用GMM(广义矩估计)估计,这允许你同时指定工具变量和集群标准误差。`xtabond`命令在面板数据中尤其有用。
3. **手动计算过度识别检验**:尽管这更复杂一些,并且可能需要对你的模型有更深的理解才能正确地执行,但你可以尝试自己构造Sargan或Hansen J test统计量。
记住,所有这些方法都有自己的假设和限制。理想情况下,你可能会选择几种方法并比较结果的稳健性。
希望以上信息对你有所帮助!如果有其他问题,请随时提问。
此文本由CAIE学术大模型生成,添加下方二维码,优先体验功能试用