Memory areg内存问题
我正试图回归一个有固定组时间效应的模型,还有许多假人Memory areg内存问题,memory,stata,Memory,Stata,我正试图回归一个有固定组时间效应的模型,还有许多假人 egen id_t = concat(id year), format(%15.0f) areg y u2j* j2j* d1* d2* x1 x2, absorb(id_t) vce(r) d1和d2都是傻瓜,每一个都有数百个可能的值u2j*是一个变量u2j与时间假人的交互作用: forvalues t=1980/2000 { gen y_`t' = (year==`t') gen u2jXy`t' = y_`t'*u2j
egen id_t = concat(id year), format(%15.0f)
areg y u2j* j2j* d1* d2* x1 x2, absorb(id_t) vce(r)
d1
和d2
都是傻瓜,每一个都有数百个可能的值u2j*
是一个变量u2j
与时间假人的交互作用:
forvalues t=1980/2000 {
gen y_`t' = (year==`t')
gen u2jXy`t' = y_`t'*u2j
(...)
我在尝试执行此操作时遇到内存错误。我所有的假人都有size int,所有其他变量都尽可能小。我还可以尝试什么来解决内存问题
记忆错误,我记得,是
您试图分配8xxxm内存(256m到…),但系统管理员已将最大内存设置为80g。请参阅帮助记忆
如果您有太多的虚拟变量,您应该寻找专门为此设计的替代估计技术 我推荐塞尔吉奥·科雷亚的雷格德夫。看这里
它对高维固定效应问题非常有效。您不应该再遇到任何内存问题。请发布您的确切错误。@RobertoFerrer不幸的是,这是一个隐私管理严格的中心,我无法轻松从中获取数据/文本/错误。我记得,这是一种类似于“试图寻址96…内存,但您的系统管理员已将最大值设置为80g”的方式,您从
帮助内存中学到了什么?“你后来尝试了什么?”罗伯特费勒我知道我很可能无能为力。我猜记忆误差来自于对方差-协方差矩阵的求逆。我希望有一个更慢的选择,不依赖于将整个var cov矩阵写入内存,但我想我错了。正如我在问题中所写的那样,我检查了变量的数据类型,这些变量已经达到了最小值。没有其他的想法。您可以通过egen id\u t=group(id year),label
来节省一些内存。这还不够。