Beta回归比例数据,包括1和0


19

我正在尝试生成一个模型,该模型的响应变量的比例在0和1之间,其中包括相当多的0和1,但也有介于两者之间的许多值。我正在考虑尝试beta回归。我为R(betareg)找到的程序包只允许0到1之间的值,但不包括0或1。我在其他地方读过,从理论上讲,β分布应该能够处理0或1的值,但是我不知道如何在RI中处理此问题,因为看到有人将0.001加到零并从中取0.001,但是我不是确定这是个好主意?

或者,我可以logit变换响应变量并使用线性回归。在这种情况下,我有0和1的相同问题,无法对它们进行日志转换。


无论您做什么,了解计数(而不仅仅是比例)都是至关重要的。但是一旦有了计数,就算逻辑起点,第一个要考虑的模型就是逻辑回归。
whuber

好吧,贝塔值介于0和1之间(几乎可以肯定)。如果您观察它们,则应使用一个可以观察样品的模型。有几种答案似乎涵盖了这种方法。我将从他们开始。
Glen_b-恢复莫妮卡

Answers:


18

您可以使用零和/或一个膨胀的beta回归模型,这些模型将beta分布与简并分布相结合,分别为0和1分配一些概率。有关详细信息,请参见以下参考:

Ospina,R.和Ferrari,SLP(2010)。Beta分布膨胀。统计论文,51(1),111-126。Ospina,R.和Ferrari,SLP(2012)。一般类别的零或一膨胀的beta回归模型。计算统计与数据分析,56(6),1609-1623。

使用R的gamlss软件包可以轻松实现这些模型。


您有一个如何在R上实现它们的示例吗?
Ouistiti'5

2
@Ouistiti zoib软件包很容易做到。
马克·怀特

11

R betareg软件包的文档中提到

如果y还假设极限值为0和1,则实际上有用的变换是(y *(n-1)+ 0.5)/ n,其中n是样本大小。

http://cran.r-project.org/web/packages/betareg/vignettes/betareg.pdf

他们给了参考史密森M,Verkuilen J(2006)。“更好的柠檬榨汁机?具有Beta分布因变量的最大似然回归。” 心理方法,11(1),54-71。


1

您是否不进行logit转换以使变量范围从负无穷大到正无穷大?我不确定具有0和1的数据是否应该成为问题。是否显示任何错误消息?顺便说一句,如果您只有比例,那么您的分析将永远是错误的。您需要使用weight=argumentglm案件的数量。

如果没有任何效果,则可以使用中位数拆分或四分位数拆分或您认为合适的任何切入点将DV拆分为几个类别,然后运行序数逻辑回归。那可能行得通。试试这些。

我个人并不认为将0.001加到零并从中取0.001是一个坏主意,但是它存在一些问题,将在后面讨论。试想一下,为什么不加减0.000000001(甚至更多的小数)?那将更好地表示0和1!在您看来,这并没有太大的区别。但实际上确实如此。

让我们看看以下内容:

> #odds when 0 is replaced by 0.00000001

> 0.00000001/(1-0.00000001)
[1] 1e-08
> log(0.00000001/(1-0.00000001))
[1] -18.42068

> #odds when 1 is replaced by (1-0.00000001):

> (1-0.00000001)/(1-(1-0.00000001))
[1] 1e+08
> log((1-0.00000001)/(1-(1-0.00000001)))
[1] 18.42068

> #odds when 0 is replaced by 0.001

> 0.001/(1-0.001)
[1] 0.001001001
> log(0.001/(1-0.001))
[1] -6.906755

> #odds when 1 is replaced by (1-0.001):

> (1-0.001)/(1-(1-0.001))
[1] 999
> log((1-0.001)/(1-(1-0.001)))
[1] 6.906755

因此,您看到,您需要将赔率保持在(0/1)和(1/0)附近。您期望的对数几率范围从负无穷大到正无穷大。因此,要添加或减去,您需要选择最多真的很长的小数位,以使对数几率接近无穷大(或非常大)!您认为足够大的程度完全取决于您。


1

看看下面的,其中一个特设变换提到maartenbuis.nl/presentations/berlin10.pdf幻灯片17.你也可以用两个独立的逻辑回归模型0和1,然后使用测试版的回归对于那些没有边界。


1
ÿñ-1个+0.5/ñ 哪里 ñ是样本大小”
Max Gordon

0

beta模型用于二进制变量,该变量被建模为具有未知概率的伯努利分布 p。Beta模型计算出超过p,它是Beta分发的。

您的变量是一个比例。您可以将比例建模为带有未知参数的Beta分布一种b。您想要的模型是beta分布之前的共轭,然后将计算一种b

我将不得不再次导出模型,但是如果我没记错的话, X1个Xñ 您返回三个期望参数: ñ,点数以及我的记忆是否正确 Ĵ[ψ一世X一世-ψXĴ]Ĵ[ψ一世1个-X一世-ψ1个-XĴ]。这些是您的Beta分布参数之上的分布参数,后者为您的比例建模。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.