gpt4 book ai didi

r - R 中的固定效应回归(具有大量虚拟变量)

转载 作者:行者123 更新时间:2023-12-04 18:16:33 26 4
gpt4 key购买 nike

当虚拟变量的数量导致模型矩阵超过 R 最大向量长度时,是否有一种简单的方法可以在 R 中进行固定效应回归?例如。,

> m <- lm(log(bid) ~ after + I(after*score) + id, data = data)
Error in model.matrix.default(mt, mf, contrasts) :
cannot allocate vector of length 905986769

其中 id 是一个因素(并且是导致上述问题的变量)。

我知道我可以通过并去除所有数据的意思,但这会抛出标准误差(是的,您可以通过 df 调整“手动”计算 SE,但我想最小化我正在引入新的错误)。我看过 plm 包,但它似乎只为带有时间组件的经典面板数据设计,这不是我的数据结构。

最佳答案

Plm 可以很好地处理此类数据。不需要时间组件。

> library(plm)
> data("Produc", package="plm")
> zz <- plm(log(gsp)~log(pcap)+log(pc)+log(emp)+unemp, data=Produc, index=c("state"))
> zz2 <- lm(log(gsp)~log(pcap)+log(pc)+log(emp)+unemp+factor(state), data=Produc)
> summary(zz)$coefficients[,1:3]
Estimate Std. Error t-value
log(pcap) -0.026149654 0.0290015755 -0.9016632
log(pc) 0.292006925 0.0251196728 11.6246309
log(emp) 0.768159473 0.0300917394 25.5272539
unemp -0.005297741 0.0009887257 -5.3581508
> summary(zz2)$coefficients[1:5,1:3]
Estimate Std. Error t value
(Intercept) 2.201617056 0.1760038727 12.5089126
log(pcap) -0.026149654 0.0290015755 -0.9016632
log(pc) 0.292006925 0.0251196728 11.6246309
log(emp) 0.768159473 0.0300917394 25.5272539
unemp -0.005297741 0.0009887257 -5.3581508

关于r - R 中的固定效应回归(具有大量虚拟变量),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2355727/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com