逻辑回归和有序自变量

机器算法验证 回归 物流 参考 序数数据
2022-03-23 04:55:55

我找到了这篇文章:

是的。该系数反映了序数预测变量中每个变化增量的对数几率变化。这个(非常常见的)模型规范假设预测变量在其增量中具有线性影响。为了测试假设,您可以将使用序数变量作为单个预测变量的模型与将响应离散化并将它们视为多个预测变量的模型进行比较(就像变量是名义变量一样);如果后一个模型没有产生明显更好的拟合,那么将每个增量视为具有线性效应是合理的。

@dmk38 2010 年 12 月 12 日 5:21

你能告诉我在哪里可以找到支持这种说法的已发表的东西吗?我正在处理数据,我想在逻辑回归中使用序数自变量。

2个回答

任何关于逻辑回归的好书都会有这个,尽管可能不是完全用这些词。尝试 Agresti 的分类数据分析以获得非常权威的来源。

它也遵循逻辑回归(或其他回归)的定义。对于序数自变量,很少有明确的方法。通常的选项是将其视为分类的(失去顺序)或连续的(这使得您引用的假设中陈述了)。如果您将其视为连续的,则进行分析的程序不知道它是序数。例如,假设你的 IV 是“你有多喜欢奥巴马总统?” 你的答案选择是一个李克特量表,从 1.“非常多”到 5.“一点也不”。如果您将此视为连续的,那么(从程序的角度来看)“5”答案是“1”答案的 5 倍。这可能不合理,也可能不合理。

正如@Scortchi所说,您还可以使用正交多项式。这是 R 中的快速演示:

set.seed(3406)
N      = 50
real.x = runif(N, 0, 10)
ord.x  = cut(real.x, breaks=c(0,2,4,6,8,10), labels=FALSE)
ord.x  = factor(ord.x, levels=1:5, ordered=TRUE)
lo.lin = -3 + .5*real.x
p.lin  = exp(lo.lin)/(1 + exp(lo.lin))
y.lin  = rbinom(N, 1, prob=p.lin)

mod.lin = glm(y.lin~ord.x, family=binomial)
summary(mod.lin)
# ...
# Coefficients:
#             Estimate Std. Error z value Pr(>|z|)   
# (Intercept)  0.05754    0.36635   0.157  0.87520   
# ord.x.L      2.94083    0.90304   3.257  0.00113 **
# ord.x.Q      0.94049    0.85724   1.097  0.27260   
# ord.x.C     -0.67049    0.77171  -0.869  0.38494   
# ord.x^4     -0.09155    0.73376  -0.125  0.90071   
# ...