我在解释逻辑回归的结果时遇到麻烦。我的结果变量是Decision
,并且是二进制的(分别为0或1和不带乘积)。
我的预测变量是Thoughts
,它是连续的,可以是正数或负数,并且四舍五入到小数点后第二位。
我想知道随着Thoughts
的变化,服用产品的概率如何变化。
逻辑回归方程为:
glm(Decision ~ Thoughts, family = binomial, data = data)
根据此模型,
Thought
s对Decision
的概率具有重大影响(b = .72,p = .02)。确定Decision
作为Thoughts
的函数的几率:exp(coef(results))
赔率= 2.07。
问题:
Thoughts
中的.01增加(或减少)会影响乘(或不乘)乘积的几率0.07 或 Thoughts
增加(减少).01,乘(不乘)产品的几率增加(减少)约2个单位? Thoughts
的优势比转换为Decision
的估计概率?还是只能在某个
Decision
分数下估算Thoughts
的概率(即,当Thoughts == 1
时计算服用该产品的估算概率)? 最佳答案
r中的逻辑回归返回的系数是logit或几率的对数。要将对数转换为优势比,您可以像上面一样对它进行幂运算。要将logit转换为概率,可以使用exp(logit)/(1+exp(logit))
函数。但是,有关此过程有一些注意事项。
首先,我将使用一些可重现的数据来说明
library('MASS')
data("menarche")
m<-glm(cbind(Menarche, Total-Menarche) ~ Age, family=binomial, data=menarche)
summary(m)
返回:
Call:
glm(formula = cbind(Menarche, Total - Menarche) ~ Age, family = binomial,
data = menarche)
Deviance Residuals:
Min 1Q Median 3Q Max
-2.0363 -0.9953 -0.4900 0.7780 1.3675
Coefficients:
Estimate Std. Error z value Pr(>|z|)
(Intercept) -21.22639 0.77068 -27.54 <2e-16 ***
Age 1.63197 0.05895 27.68 <2e-16 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
(Dispersion parameter for binomial family taken to be 1)
Null deviance: 3693.884 on 24 degrees of freedom
Residual deviance: 26.703 on 23 degrees of freedom
AIC: 114.76
Number of Fisher Scoring iterations: 4
就像在您的示例中一样,显示的系数用于logit。如果我们绘制这些数据和该模型,我们将看到S型曲线函数,它是适合二项式数据的逻辑模型的特征
#predict gives the predicted value in terms of logits
plot.dat <- data.frame(prob = menarche$Menarche/menarche$Total,
age = menarche$Age,
fit = predict(m, menarche))
#convert those logit values to probabilities
plot.dat$fit_prob <- exp(plot.dat$fit)/(1+exp(plot.dat$fit))
library(ggplot2)
ggplot(plot.dat, aes(x=age, y=prob)) +
geom_point() +
geom_line(aes(x=age, y=fit_prob))
请注意,概率的变化不是恒定的-曲线起初缓慢上升,然后在中部上升更快,最后结束。 10和12之间的概率差异远远小于12和14之间的概率差异。这意味着在不转换概率的情况下,不可能用一个数字来概括年龄和概率的关系。
要回答您的特定问题:
您如何解释赔率?
截距值的比值比是x = 0(即零思想)时“成功”的比值(在您的数据中,这是乘积的比值)。系数的比值比是当您将一个整数x值相加时(即x = 1;一个想法),比截距值高的几率增加。使用初潮数据:
exp(coef(m))
(Intercept) Age
6.046358e-10 5.113931e+00
我们可以将其解释为年龄为0时初潮的几率是.00000000006。或者,基本上是不可能的。对年龄系数求幂可以告诉我们每个年龄单元的初潮几率有望增加。在这种情况下,它刚好超过五倍。优势比为1表示没有变化,而优势比为2表示翻倍,依此类推。
您的赔率比为2.07,意味着“想法”每增加1单位,乘积的赔率就会增加2.07倍。
您如何将思想的优势比转换为估计的决策可能性?
您需要对选定的思想值进行此操作,因为如上图所示,变化在x值范围内不是恒定的。如果您想获得一些有值(value)的想法的可能性,请按以下步骤获得答案:
exp(intercept + coef*THOUGHT_Value)/(1+(exp(intercept+coef*THOUGHT_Value))