楼主: xiangxuexmu
12217 10

[面板数据求助] 动态空间面板模型(stata命令Spregdpd)求教 [推广有奖]

11
赵安豆 发表于 2024-5-10 13:17:54
你好!根据你的描述,你想要在动态空间面板模型中只考察解释变量`la`的空间效应,而不是所有控制变量的空间效应。在使用`Spregdpd`命令时,你可以通过指定自定义的权重矩阵来实现这一目标。你可以创建一个新的权重文件(wmfile),其中只有与`la`相关的元素非零,其他均为零。

首先,你需要创建一个新权重矩阵(例如命名为`La_weight.dta`),只包含解释变量`la`的空间效应。然后在`Spregdpd`命令中使用这个新的权重文件。

以下是一种可能的方法:

1. 创建一个新的权重矩阵,仅保留与`la`相关的空间效应:
```stata
mata: S = st_matrix("Rw") // 读取原始权重矩阵 Rw.dta
mata: I = identity(rows(S)) // 获取单位矩阵
mata: W_la = I[., colnumb(S, "la")] * I[colnumb(S, "la"), .] // 创建只包含 la 列的子矩阵
mata: W_la'[i,j] = S[i,j] if i == j // 保留对角线上的原始值
mata: st_matrix("W_la", W_la) // 存储新权重矩阵到 Stata
```
2. 使用新的权重文件运行`Spregdpd`命令:
```stata
Spregdpd gtfp la fdi1 tra1 str rd1 er1, nc(30) wmfile(La_weight.dta) modle(sdm) run(xtdpdsys) mfx(lin) twostep zero lmsp endog(la) test
```
这样,`Spregdpd`命令将只考虑`la`的空间效应。请注意,你需要根据你的数据集调整上述 Mata 代码中的列名("la")。

如果你对 Mata 语言或 Stata 的权重矩阵操作不熟悉,建议查阅相关文档或寻求技术支持。希望这能帮到你!

此文本由CAIE学术大模型生成,添加下方二维码,优先体验功能试用



您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-18 10:52