在前面几讲,我们介绍了线性回归及R的实现。今天的课程将继续带大家学习多元线性回归。当我们提到“线性”回归时,特指的是因变量(结果变量)为连续性变量,与自变量(预测变量)有线性关系,而对自变量(预测变量)并没有要求一定要是连续性变量。前面我们已经提到,当自变量是连续变量时,线性回归可以写成一个线性方程式y = b0 + b1*x1 + b2*x2 + …
那么,当自变量是分类变量时,回归分析时如何处理的呢?我们能不能把各个分类的类别像血压、血糖数值一样,对应为响应的数值大小来处理呢?
这显然是不可以的,因为分类变量各类别间,可能并没有一个高低之分。今天我们将带你找到答案。
1. 分类变量分类变量(也称为因子或定性变量)是将观察指标分类的变量。它们具有数量有限的不同值,称为级别。例如,性别是可以分为两个级别的分类变量:男性或女性。
回归分析时需要用数值变量。因此,当需要将分类变量用在回归模型中时,需要对分类变量进行补充处理,以使结果可解释。
通常,我们需要将分类变量进行重新编码,使成为一系列二进制的变量,被称为对比矩阵。这个新的编码,被称为“哑变量”。
2. 加载所需的R包#tidyverse 便于数据操作和可视化
library(tidyverse)
2.1 数据集示例
我们将使用在car软件包中的Salaries数据集,其中包含2008-09年度某学校助理教授,副教授和教授的9个月工资情况。收集这些数据是该学校行政部门为监测男女教职员工薪资差异而收集的数据。 获取数据data("Salaries", package = "car")
检查数据,随机抽取3个样本显示。
sample_n(Salaries, 3)
输出结果:
rank discipline yrs.since.phd yrs.service sex salary115 Prof A 12 0 Female 105000313 Prof A 29 19 Male 94350162 Prof B