【发布时间】:2013-04-28 21:33:02
【问题描述】:
我正在使用 pscl 包中的函数 zeroinfl 运行零膨胀负二项式回归模型。
我需要从模型中排除 NA,以便能够在稍后的分析中针对因变量绘制残差。
因此,我想设置na.action="na.exclude"。对于非零膨胀负二项式回归模型(使用glm 包中的glm.nb),我可以毫无问题地做到这一点,例如。
fm_nbin <- glm.nb(DV ~ factor(IDV) + contr1
+contr2 + contr3, data=df,
subset=(df$var<500), na.action="na.exclude")
fm_nbin.res = resid(fm_nbin)
plot(fm_nbin.res~df$var)
工作正常。但是,当我对零膨胀模型执行相同操作时,它不起作用:
zinfl <- zeroinfl(DV ~ factor(IDV) + contr1
+contr2 + contr3 | factor(IDV) + contr1
+contr2 + contr3, data=df,
subset=(df$var<500), na.action="na.exclude")
zinfl.res = resid(zinfl)
plot(zinfl.res~df$var)
给出错误
Error in function (formula, data = NULL, subset = NULL, na.action = na.fail, :
variable lengths differ (found for 'df$var')
我应该使用其他命令从回归中排除 NA 吗?
编辑: This 是我能找到的最接近的答案。它可以以某种方式应用于我的问题吗?
另外,可以以某种方式应用naresid 吗?
【问题讨论】:
标签: r plot na missing-data