线性回归分析中的哑变量

最近偶尔在重温统计学,发现自己工作后用了各种高级的统计分析方法,各种统计模型,却忽视了统计学中一些最基础的知识,而这些知识是所有这些高级方法的基础,基础不扎实,高级方法用起来真觉得底气不足,今天看到哑变量在回归分析中的应用,总结如下:
哑变量(Dummy Variable),也叫虚拟变量,引入哑变量的目的是,将不能够定量处理的变量量化,如职业、性别对收入的影响,战争、自然灾害对GDP的影响,季节对某些产品(如冷饮)销售的影响等等。 这种“量化”通常是通过引入“哑变量”来完成的。根据这些因素的属性类型,构造只取“0”或“1”的人工变量,通常称为哑变量(dummy variables),记为D。
举一个例子,假设变量“职业”的取值分别为:工人、农民、学生、企业职员、其他,5种选项,我们可以增加4个哑变量来代替“职业”这个变量,分别为D1(1=工人/0=非工人)、D2(1=农民/0=非农民)、D3(1=学生/0=非学生)、D4(1=企业职员/0=非企业职员),最后一个选项“其他”的信息已经包含在这4个变量中了,所以不需要再增加一个D5(1=其他/0=非其他)了。这个过程就是引入哑变量的过程,其实在结合分析(conjoint analysis)中,就是利用哑变量来分析各个属性的效用值的。
在线性回归分析中引入哑变量的目的是,可以考察定性因素对因变量的影响,引入哑变量有两种方式:加法方式与乘法方式。
所谓加法方式是指,哑变量作为单独的自变量,有独立的系数,从几何意义上来讲,就是只改变回归直线的截距(constant),不改变斜率(B);(PS:在这里我认为应该这样理解,假设原有的回归的方程为y(x1)=w1*x1+b,引入一个哑变量,就变成 y(x1,x2)=w1*x1+w2*x2+b,对于x1来说,加入哑变量并没有影响其斜率,而是影响了截距。乘法方式则是y(x1,x2)=w1*x1+w2*x2*x1+b=(w1+w2*x2)*x1+b,也就是影响了斜率)
而乘法方式则正好相反,不改变截距,只改变斜率,因为哑变量在回归方程中不是作为一个独立的自变量,而是与其中某一个自变量相乘后作为一个自变量。
当然,也可以同时使用加法和乘法来引入哑变量,即同时改变截距和斜率。
由于哑变量的取值只有0和1,它起到的作用像是一个“开关”的作用,它可以屏蔽掉D=0的case,使之不进入分析,在spss软件中就是filter的作用。我试验了一下,确实如此。
利用spss软件自带的data:car.sav,分析汽车的功率与100米加速时间的关系,将变量“filter_”作为哑变量,我们分别run两次线性回归分析,然后对比这2次的结果,来说明上面的想法。  
第一次:将哑变量“filter_
”纳入到分析中,同时利用加法和乘法来引入,将“accel”作为因变量,“horse”、“filter_”、“filter_*horse”作为自变量,进行线性回归分析;
第二次,利用变量“filter_”进行筛选case,即不分析filter_=0的case,同样将“accel”作为因变量,而只将“horse”作为自变量;
两次的线性回归结果分别为:
第一次:accel=20.495-0.049*horse-0.007*”filter_*horse"+0.738*filter_
第二次:accel=21.234-0.056*horse
当filter_$=1时,第一次计算的公式正好等于第二次机算的公式。

原文:http://blog.sina.com.cn/s/blog_498290330100n2bh.html

  • 6
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值