[英]fixed effects in R: plm vs lm + factor()
我正在尝试在R中运行固定效果回归模型。我想控制变量C和D(都不是时间变量)中的异质性。
我尝试了以下两种方法:
1)使用plm软件包:给我以下错误消息
formula = Y ~ A + B + C + D
reg = plm(formula, data= data, index=c('C','D'), method = 'within')
duplicate couples (time-id)Error in pdim.default(index[[1]], index[[2]]) :
我也尝试过先使用创建面板
data_p = pdata.frame(data,index=c('C','D'))
但是我在这两栏中都重复了观察。
2)使用factor()和lm:效果很好
formula = Y ~ A + B + factor(C) + factor(D)
reg = lm(formula, data= data)
两种方法有什么区别? 为什么plm对我不起作用? 是因为指标之一应该是时间吗?
该错误表示您重复了由变量C和D组成的id-time对。
假设您有第三个变量F,该变量与C共同使个体与另一个变量(或您的第一个维度,无论大小)有所不同。 然后,使用dplyr可以创建一个唯一的索引,例如id
:
data.frame$id <- data.frame %>% group_indices(C, F)
plm中的index参数变为index = c(id, D)
。
lm + factor()
是一个解决方案,以防万一您有不同的发现。 如果不是这种情况,将无法在每个ID中正确加权结果,即无法正确识别固定效果。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.