带有偏移项的 Beta 回归或逻辑回归?

问题描述 投票:0回答:2

我有一个因变量 (DV),它是一个以 [0,1) 为界的比例。最初,我正在考虑使用 beta 回归来模拟该比例与其他两个因素(区域和季节)之间的关系,但由于数据包含 0,我必须使用 Smithson 和 Verkuilen (2006) 建议的方法来转换 DV这表明进行以下转换:(y·(n − 1) + 0.5)/n,其中 n 是样本大小。

这是一个有效的选项,但我开始认为,由于我建模为响应的比例实际上是加权计数/总计,因此最好将响应建模为二项式并使用权重的偏移项。我的示例中使用的 DV 是 p,其中 p 是(观察到的数量/总计)/天数,因此天数将是这种情况下的加权因子。

在这种情况下哪种方法最合适?

logistic-regression betareg
2个回答
0
投票

我建议使用 R 中的“零一膨胀 Beta 回归”包,

zoib
,它有专门的方法来处理比例数据中的真实 0 和 1 观测值。虽然它不像
betareg
那么直观,但维护者很擅长回答问题。

https://journal.r-project.org/archive/2015/RJ-2015-019/RJ-2015-019.pdf

以区域和季节因素为例,其中所有因素都会影响均值、方差、零概率和一概率(在您的数据中可能合理也可能不合理)如下:

zmod <- zoib(Yprop ~ Zone*Season | Zone*Season | Zone*Season | Zone*Season, data=zone_season_data)
plot(as.numeric(zone_season_data$Zone),
    apply( rbind(zm1$ypred[[1]],zm1$ypred[[2]]), 2,mean),
    ylab = 'Predicted Yprop', xlab = 'Zone',
    ylim = c(0,1), pch = 19, col = 4 )

0
投票

你所描述的可以拟合为二项式 GLM;你已经从总数中得到了计数(其中总数基本上是预先指定的 - 即有固定数量的试验,一些给出 0,一些给出 1,对于响应)。

在这种情况下,如果您将比例作为响应传递(就像您在此处所做的那样),则应通过将总计数传递给

weights
参数来指定模型(至少在 R 中)。如果每天计算相同的
weights
,我可能会让
total + num_days
等于
total
,否则您需要在数据中创建一个总试验变量,该变量汇总每天的总试验次数并将其存储起来,以便您可以将其传递给
weights
参数。

© www.soinside.com 2019 - 2024. All rights reserved.