拓端tecdat|R语言辅导在逻辑回归中求R square R方
原文链接:http://tecdat.cn/?p=6295
并非所有结果/因变量都可以使用线性回归进行合理建模。也许第二种最常见的回归模型是逻辑回归,它适用于二元结果数据。如何计算逻辑回归模型的R平方?
麦克法登R平方
在R中,glm(广义线性模型)命令是用于拟合逻辑回归的标准命令。据我所知,拟合的glm对象并没有直接给你任何伪R平方值,但可以很容易地计算出McFadden的度量。为此,我们首先拟合我们感兴趣的模型,然后是仅包含截距的null模型。然后我们可以使用拟合模型对数似然值计算McFadden的R平方:
为了了解预测器需要获得某个McFadden的R平方值的强度,我们将使用单个二进制预测器X来模拟数据, 我们首先尝试P(Y = 1 | X = 0)= 0.3和P(Y = 1 | X = 1)= 0.7:
因此,即使X对Y = 1的概率有相当强烈的影响,McFadden的R2也只有0.13。要增加它,我们必须使P(Y = 1 | X = 0)和P(Y = 1 | X = 1)更加不同:
即使X将P(Y = 1)从0.1变为0.9,McFadden的R平方仅为0.55。最后我们将尝试0.01和0.99的值 - 我称之为非常强大的效果!
现在我们有一个更接近1的值。
分组二项数据与单个数据
data < - data.frame(s = c(700,300),f = c(300,700),x = c(0,1)) SFX 1 700 300 0 2 300 700 1
为了使逻辑回归模型适合R中的数据,我们可以将响应传递给glm函数, :
我们现在将分组的二项式数据转换为 伯努利 数据,并适合相同的逻辑回归模型。
正如所料,我们从分组数据框中获得相同的参数估计和推论。
我们看到分组数据模型的R平方为0.96,而单个数据模型的R平方仅为0.12。
如果您有任何疑问,请在下面发表评论。
▍关注我们
【大数据部落】第三方数据服务提供商,提供全面的统计分析与数据挖掘咨询服务,为客户定制个性化的数据解决方案与行业报告等。
▍咨询链接:http://y0.cn/teradat
▍联系邮箱:3025393450@qq.com