如何在逻辑回归(SPSS)中处理非二元分类变量


10

我必须使用许多自变量进行二进制逻辑回归。它们大多数是二进制的,但是一些分类变量具有两个以上的级别。

处理此类变量的最佳方法是什么?

例如,对于一个具有三个可能值的变量,我假设必须创建两个虚拟变量。然后,在逐步回归过程中,最好同时测试两个虚拟变量,或者分别测试它们?

我将使用SPSS,但我不太清楚,所以:SPSS如何处理这种情况?

此外,对于序数分类变量,使用伪变量重新创建序数标度是一件好事吗?(例如,使用三个虚拟变量为一个4状态定序变量,把0-0-0用于电平,为电平2,为电平3和用于电平4,而不是,,和为4个级别)。11-0-021-1-031-1-140-0-01-0-00-1-00-0-1


2
这只是部分答案:即使您明确创建了虚拟变量(而不是使用软件的隐式功能),也要在所有分析中将它们保持在一起。尤其是,它们应该全部以逐步回归的方式一起进入而一起离开,并针对所涉及的变量总数适当地计算p值。(无论如何,这是Hosmer&Lemeshow的建议,并且很有道理。)
胡言乱语


您正在谈论自己的自变量。逻辑回归只需要二进制变量即可。
约翰,

1
这里要注意的一件事是,您根本不应该使用逐步选择过程。他们是无效的。如果那没有道理/您想了解原因,则可以帮助您在此处阅读我的答案:算法自动模型选择
gung-恢复莫妮卡

Answers:



7

Logistic回归是一种非常灵活的方法。它可以很容易地将分类变量用作自变量。使用Logistic回归的大多数软件应允许您使用分类变量。

例如,假设您的分类变量之一是将温度定义为三类:冷/轻/热。如您建议的那样,您可以将其解释为三个单独的虚拟变量,每个变量变量的值为1或0。但是,软件应允许您使用单个类别变量,而不是文本值cold / mild / hot。并且,logit回归将得出三个温度条件中每一个的系数(或常数)。如果不重要,则软件或用户可以很容易地将其取出(观察t stat和p值之后)。

将分类变量类别分组为单个分类变量的主要好处是模型效率。模型中的单个列可以处理单个类别变量所需的任意多个类别。相反,如果对分类变量的每个类别都使用虚拟变量,则模型可以快速增长为具有大量列,这些列在提到的替代方案下都是多余的。


1
@gaetan我不了解关于单列还是多列的评论。您是否建议在单列中将分类变量编码为1、2、3等,而不是使用虚拟变量?我不确定这对我是否有意义,因为您随后强加了一个隐式约束,即级别1和2之间对dv的影响的差异与级别2和3之间对dv的影响的差异相同。缺少一些东西。

1
@Gaetan我不确定我是否关注您。XLStat如何将冷,温和或热的“文本”值转换为用于估计目的的数值?如果有一种方法可以让您估计类别变量的影响,而不必确定使用虚拟变量,那么该虚拟变量应该独立于您使用的软件,因为应该有一些基于概念/模型的基本逻辑。

kk1

1
@Gatean好,在这种情况下,可以在SPSS中完成相同的操作(您可以在每个变量的数字/序号/标称值之间进行选择)-然后,将相应地构建设计矩阵。
chl

2
@Gaetan @chl总结一下我的理解:SPSS和XLStat的功能可用来指定测量范围(标称,有序等),从而减小了数据文件的大小。但是,在这两种情况下,软件都将使用正确的编码方案(例如,将具有J类的标称变量扩展为J-1个虚拟变量)作为后台估计过程的一部分。那是对局势的公正评估吗?

0

据我所知,最好将虚拟变量用于分类/标称数据,而对于序数数据,可以对不同级别使用1,2,3编码。对于虚拟变量,如果对于特定的保留为true,则将编码为1,否则为0。虚拟变量也将比否小1。在级别中,例如在二进制中,我们有1。在哑变量中全0的观察值将自动使未编码的哑为1。

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.