哑变量在SPSS和SAS进行回归分析应用

2020/09/29 00:45

哑变量在SPSS和SAS进行回归分析应用

虚拟变量(Dummy Variable),又称虚设变量、名义变量或哑变量,是量化了的质变量,通常取值为0或1。引入哑变量可使线形回归模型变得更复杂,但对问题描述更简明。
       名义变量引入回归分析,必须进行数量化。如,职业有工人、农民、教师,分别赋值0,1,2。但是0,1,2代表的实际意义又不是由小到大的关系。所以这在回归分析中直接使用是错误的。如考虑季节因素时,用1,2,3,4编码也是不合理的,通常也进行哑变量化。

     对于有序变量,如轻、中、重,则要酌情考虑。如果样本量足够打的话,也进行哑变量化,这样可以得到不同级别的差异。但是如果样本量不够大是,哑变量化造成变量数目上升,使回归结果变得不可靠,只能适得其反。
哑变量设置的原则
       在模型中引入多个哑变量时,哑变量的个数应按下列原则确定:
       如果有m种互斥的属性类型,在模型中引入(m-1)个哑变量。
       例如,文化程度分小学、初中、高中、大学、研究生5类,引用4个哑变量
回归分析
        在spss中,logistics回归中,有专门的选项来处理需要哑变量化的变量,只需单击“Categorical..”进行设置即可。但是对于多元线性回归就没有那么幸运了。
       用computer或recode设置一组哑变量。由于哑变量是一个整体变量,所以进行变量筛选时必须共同进退。因此,讲所有哑变量同一般变量一下直接进行筛选是不对的,会出现一部分变量进入一部分变量未进入的情形。解决的方法是:将同一因素下的哑变量进行归组,在纳入方法中选择了“ENTER”来确保这些哑变量同进同出,而其它连续型变量和二分类变量则归为另一组,纳入方法为STEPWISE。然后在没有纳入这组哑变量的情况下再做一次STEPWISE,再来比较是不是应该纳入这组哑变量。
在sas中,哑变量的设置需要另外写程序,但是在回归程序中,则比较简单。eg.因变量y,自变量x1,x2,哑变量组x31 x32 x33,
proc reg;
  model y=x1 x2 {x31 x32 x33} /selection=stepwise;
run;
即,把哑变量组用{}括起来就可以了。

SPSS多元线性回归哑变量设置
    在spss中,logistics回归中,有专门的选项来处理需要哑变量化的变量,只需单击“Categorical..”进行设置即可。但是对于多元线性回归就没有那么幸运了。
    用compute或recode设置一组哑变量。比如学历有三个等级:高中及以下,本科,研究生及以上。设置两个哑变量:学历1,学历2。下面以compute为例说明如何定义哑变量。

利用compute对学历1,学历2进行计算。设置成学历为高中及以下时学历1=0,历为高中及以下时学历2=0;学历为本科时学历1=1,为本科时学历2=0;为研究生及以上时学历1=0,为研究生及以上时学历2=1。

举例如下:

在SPSS中将多分类变量设置为哑变量比较麻烦,其中的一种方法就是将该多分类变量转换成N-1列的哑变量,举例来说,原多分类变量有四个取值(A/B/C/D),这时需要设置三列哑变量,比如D2,D3,D4
用如果变量值是B,则D2=1,否则取0,如果是C,则用D3=1,否则取0,如果是D,则D4=1,否则取0


D2 D3 D4
1    0    0——》B
0    1    0——》C
1    0    0——》B
0    0    1——》D
0    0    0——》A
注意,4分类只能设置3个哑变量!

定义好所有的哑变量之后,接下来就可以进行多元线性回归的计算了。由于哑变量是一个整体变量,所以进行变量筛选时必须共同进退。因此,将所有哑变量同一般变量一下直接进行筛选是不对的,会出现一部分变量进入一部分变量未进入的情形。

解决的方法是:将同一因素下的哑变量进行归组(block),在纳入方法中选择了“ENTER”来确保这些哑变量同进同出,而其它因素的哑变量另一组(block),除哑变量之外,其余自变量归为一个block,纳入方法为STEPWISE。

结果的解读方面,只要哑变量有其中一个有统计学显著性,就应该把整个因素包含的哑变量纳入回归方程。

免费直播

    精选课程 更多

    注册电脑版

    版权所有 2003-2020 广州环球青藤科技发展有限公司