我正在尝试使用R进行固定效果模型
fixed1<-plm(ITEMS_STARPU ~ TREAT_SUM, data=dataHyp1.i, index=c("PRACTICE"), model = "within")
并且我不断收到以下错误:
Error in plm.fit(formula, data, model, effect, random.method, random.models, : empty model
结果变量是根据全科医生实践(即诊所)分配的抗生素数量,因此该指数处于实践水平(相对于患者)
当我使用“ pooling”时,数据有效
[我阅读了先前的文章,指出问题可能是时间段,但是数据已经包含日期元素(数据每月收集并显示)
Hyp1.i <- read.csv("Hypothesis 1.i.csv", header = TRUE, na.strings = c("NA"), stringsAsFactors = FALSE)
myvarsHyp1.i<- c("PERIOD_NO", "PRACTICE", "REGIONAL_TEAM", "ITEMS_STARPU", "TREAT_SUM")
dataHyp1.i <- Hyp1.i[,myvarsHyp1.i]
table(dataHyp1.i$PERIOD_NO)
class(dataHyp1.i$PERIOD_NO)
dataHyp1.i$PERIOD_NO<-factor(dataHyp1.i$PERIOD_NO)
table(dataHyp1.i$TREAT_SUM)
class(dataHyp1.i$TREAT_SUM)
dataHyp1.i$TREAT_SUM <- factor(dataHyp1.i$TREAT_SUM, levels=c(0:2), labels=c("No Letter", "Single Letter", "Repeat Letter"))
table(dataHyp1.i$TREAT_SUM)
fixed1<-plm(ITEMS_STARPU ~ TREAT_SUM, data=dataHyp1.i, index=c("PRACTICE"), model = "within")
summary(fixed)
您正在使用面板数据,因此应该同时具有横截面数据和时间序列。所以我认为问题是index=c("PRACTICE")
的一部分应该是横截面ID和时间ID的标头,在您的情况下为PERIOD_NO。所以我认为您首先应该写index=c("PRACTICE","PERIOD_NO")
,并且您的面板数据可能不再为空