关注一下~,更多商业数据分析案例等你来撩
前言
构建多元线性回归模型时,如果能够充分的使用已有变量,或将其改造成另一种形式的可供使用的变量,将在一定程度上提高模型精度及其泛化能力。因为数据集中的名义变量(或叫类别变量)是无法直接使用的,所以虚拟变量(又叫哑元变量)的设置便是非常经典且必须掌握的一步,原理简单,实现优雅,效果拔群。
原理趣析
至于虚拟变量的官方解释和值得参考的论文集和虚拟变量的深度应用及拓展,笔者都已经打包好了,私信我即可,我每天固定时间会查看。因为虚拟变量的原理其实非常简单,所以如何有趣且快速的理解原理并应用于实际的 Python 程序才是本文的侧重点。
将无法直接用于建模的名义变量转换成可放入模型的虚拟变量的核心就短短八个字:四散拆开,非此即彼。下面用一个只有4行的微型数据集辅以说明。
从上表中,不难发现:该名义变量有 n 类,就能拆分出 n 个名义变量
巧妙的使用 0 和 1 来达到用虚拟变量列代替原名义变量所在类别
接下来要做的就是将生成的虚拟变量们放入多元线性回归模型,但要注意的是:转化后的虚拟变量们需要舍弃一个,才能得到满秩矩阵。具体原因和有关线性代数的解释可以查看笔者打包好的论文,我们可以理解为,当该名义变量可划分为 n 类时,只需要 n-1 个虚拟变量就已足够获知所有信息了。该丢弃哪个,可根据实际情况来决定。