我开发了一个相当简单的多元回归计量经济学模型。我现在正在尝试运行健壮回归(EViews称之为健壮最小二乘)。我可以很容易地运行一个稳健的回归M-估计。但是,每次我运行稳健回归MM估计时,我都会遇到相同的错误:“达到了奇异子样本的最大数量。”我已经通过增加/减少迭代次数、收敛水平等来调整MM-estimation规范。我总是会遇到同样的错误。
在一个EViews论坛上,另一个人在MM估计和S估计上遇到了完全相同的问题。论坛主持人表示,如果一个模型在没有那么多观测的情况下存在虚拟变量,这样的估计可能无法达到收敛,并产生上述误差。我的模型确实有虚拟变量。而且,其中一些没有那么多的观测值( 217个观测值的时间序列数据中有8个连续的观测值)。然而,我不清楚这是不是EViews的限制,或者这是否真的是一个算法限制。我可能会尝试在R中重新运行MM-estimation,看看它是否可行。
在上面的基础上,我就这么做了。并且,使用rlm()函数使用R和MASS包运行稳健回归。就像在EViews中一样,我运行M-estimation没有任何问题。同样,在尝试MM估计时,我第一次遇到了麻烦。就像在EViews中一样,我得到了一条错误消息,指出回归/模拟在20次迭代后没有达到收敛。因此,我重新运行了我的MM-估计,首先消除了所有的虚拟变量。正如预测的那样,它起作用了。接下来,我一次只添加一个伪变量,每次我重新运行MM估计时。我这样做是为了观察MM估计模型何时会崩溃。令我惊讶的是,它从来没有发生过。现在,我终于可以使用所有的虚拟变量来运行MM估计了。我不知道为什么一开始我不能一次运行所有的虚拟变量(也许我在编码时出错了)。
这导致我得出结论,在这一点上,R比EViews更灵活。在仔细检查之后,我注意到我运行的Huber estimation是双二次类型的(与常规的EViews M-estimation相比)。这会产生很大的不同。当我在R中运行双二次型的M-估计时,我几乎得到了与EViews完全相同的结果。这两者之间有很小的区别。考虑到求解过程是迭代的,这是可以预期的。
发布于 2015-12-30 07:10:34
正如你可以在我的评论中看到的,我在这个问题上做了相当多的工作。最后,我不清楚为什么当运行MM-estimation类型的稳健回归时,EViews会有条不紊地崩溃,因为模型有几个虚拟变量。我觉得它不应该这样。使用相同的稳健回归方法的完全相同的模型可以在R中使用MASS软件包和rlm函数求解,使用method = "MM“。
如果你发现自己遇到了类似的情况,我建议你尝试用R代替稳健回归MM类型。我不知道这个过程在SAS,SPSS,Python,STATA和其他类似软件中的相对弹性是多少。希望在这一点上,其中任何一个都比EViews更有弹性。
这种类型的模型实际上并不是不可能导致软件崩溃(在多次迭代之后,算法不会收敛到解决方案)。但是,如果我的经验是任何指标,在这一点上,R的弹性阈值比EViews高得多。
https://stackoverflow.com/questions/34487646
复制相似问题