虚拟变量转换
# 虚拟变量转换
# 1、作用
多分类变量是不能直接参与到回归计算中。对于有序定类变量,可以将它进行数据编码,利用数字来表示分类变量的有序等级;但是对于无序定类变量,需要将其转变为虚拟变量来处理。虚拟变量转换包括哑变量和独热编码。
# 2、输入输出描述
输入:一项或以上定类变量。
输出:新生成哑变量或者独热编码。
# 3、案例示例
案例:现有交通工具这一分类变量,它的选项中不存在大小关系存在,而应该是相互平等独立的关系,在回归前就建议将该变量进行虚拟变量转换。
# 4、案例数据
虚拟变量转换案例数据
# 5、案例操作
Step1:在“数据处理”模块新建处理;
Step2:上传文件;
Step3:选择对应数据打开后进行预览,确认无误后点击开始处理;
Step4:选择【虚拟变量转换】;
Step5:查看对应的数据数据格式,【虚拟变量转换】要求变量为定类变量,且只有一项;
Step6:确认参数,包括哑变量化和独热编码;
Step7:点击【开始处理】,完成全部操作。
# 6、输出结果分析
对于交通工具这个变量,是存在三个分类的,即自行车、私家车、公交地铁。
(1)首先是独热编码的结果,可以看到,对于三个分类水平:自行车、私家车、公交地铁
分别创建了三个值只包含了0或1的变量,对于“交通工具_自行车_独热编码”,若是某样本的交通工具选了自行车,那么这一列的取值为1,否则取值为0。
(2)接着是哑变量化的结果,哑变量化事实上比独热编码少了一列变量(哪一列变量少了是随机的,比如说在这里是“公交地铁”少了,即以“公交地铁”作为参照项),这是因为独热编码在回归中容易造成共线性,而哑变量随机以一个选项作为参照项(公交地铁),比如说当自行车=0、私家车=0的时候,那么自然剩下的一个选项就是公交地铁了,且在对回归系数进行解释时,所有类别哑变量的回归系数,均表示该哑变量与参照项相比之后对因变量的影响。
注意,在回归中常用到的是哑变量化,由于系统处理哑变量化是随机以某一项作为参照项的(即对于三种交通工具,有可能是把自行车作为参照项,有可能把公交地铁作为参照项,有可能把私家车作为参照项,这是不确定的),一般情况下,最好是做独热编码,然后在回归分析拖入自变量中的时候,不要拖入参考项就好了(即比如说我确定了自行车为参照项,那么只在自变量中拖入公交地铁、私家车两个热度编码)。
# 7、注意事项
- 虚拟变量转换不支持对存在空值的变量进行处理,需要提前处理空值。
# 8、模型理论
虚拟变量转化的应用场景:在回归分析中只能处理数值型数据,也就是定量变量。对于有序定类变量,可以将它进行数据编码,利用数字来表示分类变量的有序等级,比如说小学学历代表1,初中学列代表2,高中学历代表3,本科学历代表4;但是对于无序定类变量,需要将其转变为虚拟变量来处理,虚拟变量只含有2个数据,0或1,由此也变成了一个定量变量,比如说社会身份(学生、上班族、其它),这之间是无序的。
独热编码:
哑变量化:
# 9、参考文献
[1] Scientific Platform Serving for Statistics Professional 2021. SPSSPRO. (Version 1.0.11)[Online Application Software]. Retrieved from https://www.spsspro.com.