错误:使用Stata中的nlcom“超出最大迭代次数”

时间:2013-12-06 17:43:07

标签: stata standard-error

我试图使用Stata(Delta方法)中的nlcom来估计有限因变量模型的边际效应的标准误差。我们通常在计算边际效应时计算概率,条件和无条件部分。我还能够在Stata中使用nlcom获取条件和无条件部分的标准误差。但是,当使用nlcom概率时,我收到了“超出最大迭代次数”的错误。我确实查看了解决方案here,它确实解决了一些二进制变量(3)。但是,我仍然得到4个变量的相同错误。我深入研究了这个问题,发现错误与虚拟变量为0的部分有关:

\开始{}方程 \ Delta P(y> 0)= P(y> 0 | x = 1)-P(y> 0 | x = 0) \ {端方程}

以下是竞赛变量(虚拟变量)的示例代码,nlcom适用于虚拟变量为1(无校正)的部分,但即使考虑到建议的修正后也不适用于0在前面提到的网站。增加迭代次数并乘以更大的幅度也无济于事:

       _nl_1:  binormal(1.733373263151318-(.0438395852394023*[Tier1]_b[race])+(1*[Tier1]_b[race]),7.575546508411257-(.0438395852394023*[Tier2]_b[race])+
> (1*[Tier2]_b[race])/exp([lnsigma]_b[_cons]),tanh([tau]_b[_cons]))

------------------------------------------------------------------------------
             |      Coef.   Std. Err.      z    P>|z|     [95% Conf. Interval]
-------------+----------------------------------------------------------------
       _nl_1 |   .9223902   .0129743    71.09   0.000     .8969611    .9478193
------------------------------------------------------------------------------

       _nl_1:  binormal(1.733373263151318-(.0438395852394023*[Tier1]_b[race])+(0*[Tier1]_b[race]),7.575546508411257-(.0438395852394023*[Tier2]_b[race])+
> (0*[Tier2]_b[race])/exp([lnsigma]_b[_cons]),tanh([tau]_b[_cons]))*(1e+2)
Maximum number of iterations exceeded.

有什么想法解决这个问题?

1 个答案:

答案 0 :(得分:1)

我不知道这是否是您问题的根源,但在成功和失败的nl声明中,估算的标准偏差exp([lnsigma]_b[_cons])仅除以最后[Tier*]_b[race] } term,然后只在binormal的第二个参数中(这可能是因为你在第一个参数中将SD约束为1)。这是对第二个nl语句中你的意思的猜测,但这只是猜测。

 #delim ;   
_nl_1:
 binormal
((1.733373263151318-(.0438395852394023*[Tier1]_b[race])+(0*[Tier1]_b[race]))
/exp([lnsigma]_b[_cons]),
 (7.575546508411257-(.0438395852394023*[Tier2]_b[race])+ (0*[Tier2]_b[race]))
/exp([lnsigma]_b[_cons]),
tanh([tau]_b[_cons])) ;
#delim cr