statistics - 检验大型不平衡面板数据中的异方差性和自相关性
问题描述
我想在大型不平衡面板数据集中测试异方差性和自相关性。
我使用以下代码这样做:
* Heteroskedasticity test
// iterated GLS with only heteroskedasticity produces
// maximum-likelihood parameter estimates
xtgls adjusted_volume ibn.rounded_time i.id i.TRD_EVENT_DT, igls panels(heteroskedastic)
estimates store hetero
* Autocorrelation
findit xtserial
net sj 3-2 st0039
net install st0039
xtserial adjusted_volume ibn.rounded_time i.id i.TRD_EVENT_DT
虽然我使用了高流程中心的计算能力,但由于迭代的方法,这个过程需要15个小时以上。
使用 Stata 执行这些测试的最有效程序是什么?
解决方案
这个问题是题外话,而且范围很广,但我怀疑新用户仍然很感兴趣。因此,在这里,我将尝试在评论中巩固我们的对话作为答案。
我强烈建议以后不要使用高度主观的词,例如“最佳”,这对不同的人可能意味着不同的东西。或诸如“高效”之类的术语,在不同的上下文中可能具有不同的含义。当我们对您正在尝试做的事情一无所知时,也很难提供有关使用命令的具体建议。
在我看来,“最佳”选择是在现有数据的情况下尽可能准确地完成工作的选择。如今,速度是一个重要的考虑因素,但准确性仍然是最基本的考虑因素。随着您继续使用 Stata,您会发现它有相当多的命令,通常具有重叠的功能。根据用例,有时选择一种实现而不是另一种可能会“更好”,因为它可能更实用或更快地实现所需的最终结果。
例如,您在上一篇文章中的评论中该noconstant
选项不可用rreg
。regress
在该特定上下文中,您可以使用该选项获得相当不错的替代vce(robust)
方案。事实上,这种替代方案通常可能足以满足多个用例。
在此特定示例中,如果
不使用xtgls
该选项,将会快得多。igls
对于更大和更“困难”的数据集尤其如此。在需要 MLE 的情况下,该iterate
选项将允许您指定固定数量的迭代,这可能会加快速度,但如果您不知道自己在做什么,则可能会导致灾难,因此不推荐使用。此选项通常用于其他目的。但是,xtgls
您可以使用的唯一命令是什么?在这里阅读为什么实际上不一定如此。
关于速度,Stata 通常很慢,至少在ado
使用该语言时是这样。这是因为它是一种解释型语言。parallelisation
如果您拥有 Stata MP ,则此处唯一现实的提高速度的选择是通过。即使在这种情况下,是否获得任何收益也取决于许多因素,包括您使用的命令。
最后,xtserial
是一个社区贡献的命令,您在问题中没有明确说明。从一开始就提供此信息是习惯且有用的,因此其他人知道您没有参考官方的内置命令。
推荐阅读
- angular - Angular ngx-datatable-footer 如何调用函数
- azure-data-explorer - Kusto 中与静态数组的表条目比较
- c++ - 在 OpenCV (C++) 中应用 4x5 矩阵(而不是 4x4)进行变换
- assembly - 如何通过 BIOS 调用读取多个扇区?
- npm - 当我想安装我的依赖项时出现 Prisma 错误
- kubernetes - Configmap 的初始部署
- javascript - Sequelize Migration 添加数组列
- javascript - 在页面加载时隐藏 div/popup 直到单击按钮
- reactjs - 当我在页面上滚动时如何让我的 DropDownList ant design 组件修复
- oracle - 如何为 oracle modin read_sql 传递 sqlalchemyconnection 字符串