【问题标题】:Instrumental variable estimation by systemfit and 2SLS in RR中systemfit和2SLS的工具变量估计
【发布时间】:2014-06-17 15:47:28
【问题描述】:

我正在尝试在 R 中使用包 systemfit 和两阶段最小二乘法 (2SLS) 进行这个简单的工具变量估计:

y = b + b1*x1 + b2*x2 + b3*w + e

其中 x1 和 x1 是我想要检测的内生变量,w 是外生变量,e 是残差。我的两个仪器是 z1 和 z2。我想将 z1 用于 x1,将 z2 用于 x2。因此,我的第一阶段回归将是

x1 = c + c1*z1 + c2*z2 + c3*w + e1
x2 = d + d1*z1 + d2*z2 +d3*w + e2

我试过了:

systemfit(y~x1 + x2 + w,inst=~z1 + z2 +w)

但不确定这是否正确...

【问题讨论】:

    标签: r


    【解决方案1】:

    为什么不使用AER 包中的ivreg?您可以尝试一下并比较结果。

     #install.packages("AER") # if not already installed
     library(AER)
     ?ivreg
    

    【讨论】:

    • 谢谢,我会试试这个。不知道ivreg
    【解决方案2】:

    我认为systemfit 函数每个方程只能处理一个内生变量。尝试分两步完成。

    lm1 <- lm(x1 ~ z1 + w, data = yourDataFrame) 
    lm2 <- lm(x2 ~ z2 + w, data = yourDataFrame)
    yourDataFrame$x1.1st.step <- lm1$fitted
    yourDataFrame$x2.1st.step <- lm2$fitted
    
    lm.2nd.step <- lm(y ~ x1.1st.step + x2.1st.step + w, data = yourDataFrame)
    

    【讨论】:

    • 谢谢。好吧,也许就是这样。我会这样做来检查估计值,但是第二步中的标准误差不会像这样正确......
    【解决方案3】:

    我肯定会使用ivreg 来估计 2SLS 模型。如果您没有 R 的更新版本,有时上传 AER 包可能会很棘手(如果遇到困难,请检查哪个包更适合您的 R 版本!)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-06-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多