当使用 plm 包使用此语法估计池模型时,我得到的 R2 接近 0.8。
library(plm)
data <- employmentsez
data$lfirms2 <- data$lfirms*data$lfirms
data$sezname <- as.factor(data$sezname)
data <- plm.data(data, index=c("code", "year"))
fit1 <- plm(lemployment ~ lfirms + lfirms2 + lfirmsfor + lwages + nuts51 + lgovgrants + leusubs + agrishare, data=data, model="pooling")
R-Squared: 0.7972
Adj. R-Squared: 0.79679
Run Code Online (Sandbox Code Playgroud)
使用完全相同的规范并再次使用 plm,但现在此语法我得到小于 0.1 的 R2,并且调整后的 R2 为负值。
library(plm)
data <- employmentsez
data$lfirms2 <- data$lfirms*data$lfirms
data$sezname <- as.factor(data$sezname)
data <- plm.data(data, index=c("code", "year"))
fit1 <- plm(lemployment ~ lfirms + lfirms2 + lfirmsfor + lwages + nuts51 + lgovgrants + leusubs + agrishare, data=data, model="within", effect="individual")
summary(fit1)
R-Squared: 0.085873
Adj. R-Squared: -0.039652
Run Code Online (Sandbox Code Playgroud)
我认为差异太大,在 Stata 中,使用完全相同的规格,您可以为内部模型获得更高的 R2。当使用完全相同的规格并添加固定效应时,内部模型是否应该给出更高的 R2?
有谁知道如何解决这个问题,是否有其他方法可以通过 plm 软件包获取正确的 R2?