线性回归 - 多元线性回归案例 - 分析步骤、输出结果详解、与Python的结果对比 -(SPSS建模)

版权声明:转载请联系作者,获得允许后,添加链接及作者到页首 https://blog.csdn.net/weixin_40683253/article/details/86736428

现在用 Python 写线性回归的博客都快烂大街了,为什么还要用 SPSS 做线性回归呢?这就来说说 SPSS 存在的原因吧。

SPSS 是一个很强大的软件,不用编程,不用调参,点巴两下就出结果了,而且出来的大多是你想要的。这样的特点特别适合建模初期进行算法的选择。比如

  1. SPSS 做因子分析,输出结果中有一项 Kaiser-Meyer-Olkin Measure of Sampling Adequacy. 它的值是在 [ 0, 1] 范围内,这个值大于 0.5 就证明原数据中的指标适合使用因子分析算法进行建模,小于 0.5 要不重新计算指标,要不换算法。
  2. SPSS 做多元线性回归,输出结果中的拟合度过低,说明指标与结果之间的相关性并不明显,要不重新计算指标,要不换算法。
  3. ..................

下面详细讲讲 SPSS做多元线性回归的步骤吧

准备工作:SPSS - 中文版 SPSS 22.0 软件下载与安装教程 - 【附产品授权许可码,永久免费】

第一步:导入数据

路径:【文件】--【打开】--【数据】--【更改文件类型,找到你的数据】--【打开】--【然后会蹦出下图左中的筛选框,基本使用默认值就行,点确定】

  1. 第一行代表的是用第一行的数据做列名;
  2. 第二行代表文件中数据所在的范围,默认是所有数据都选上,但是如果你只需要选择前 n 行,那就把里面的110改了就行;
  3. 第三行代表字符串宽度,这个默认值就可以,不用改;

导入数据之后就是下图右中的样子,老习惯,我们来说说原数据,第一列是拨打电话指数,第二列是接通电话指数,这两个是自变量,第三类是因变量回款指数。为了脱敏,所以用自己的办法换算成现在这样的数值。

                 

第二步:数据分析

【分析】--【回归】--【线性】--【通过截图中的方式,将因变量与自变量添加到对应的地方】--【其他都使用默认值】--【确定】

        

第三步:输出结果分析 

第一项输出结果:输入/移去的变量

输入变量是两个自变量Connect, Call,没有移去任何变量。

第二项输出结果:模型汇总

  1. R表示拟合优度(goodness of fit),用来衡量模型的拟合程度,越接近 1 越好;
  2. R方表示决定系数,用于反映模型能够解释的方差占因变量方差的百分比,越接近 1 越好;
  3. 调整R方是考虑自变量之间的相互影响之后,对决定系数R方的校正,比R方更加严谨,越接近 1 越好;
  4. 标准估计的误差是误差项 ε 的方差 σ2的一个估计值,越小越好;

一般认为,

  • 小效应:R (0.1~0.3),对应 R方(0.01~0.09);
  • 中等效应:R (0.3~0.5),对应 R方(0.09~0.25);
  • 大效应:R (0.5~1),对应 R方(0.25~1);

第三项输出结果:Anova

Anova表示方差分析结果,主要看 F 和 Sig 值,为方差分析的结果,F检验的重点在 Sig 值,具体大小不重要,其 F 值对应的 Sig 值小于 0.05 就可以认为回归方程是有用的。

第四项输出结果:系数

系数表列出了自变量的显著性检验结果,

  1. 非标准化系数中的 B 表示自变量的系数与常数项(下图代表的回归方式为:Return = 0.097 * Call + 1.243 * Connect - 0.160);
  2. 标准系数给出的自变量系数与非标准化系数中的明显不同,这是因为考虑到不同自变量之间的量纲和取值范围不同(比如在其他例子里面,第一个自变量是年龄(0~120),第二个自变量是收入(0~10万),显然年龄18岁与收入18块钱代表的意义是不一样的,因此需要进行标准化),因此这里的系数更能代表每个自变量对因变量的影响程度,(下图代表的回归方式为:Return = 0.126 * Call_标准化的值 + 0.739 * Connect_标准化的值);
  3. t 值 与 Sig 值 是自变量的显著性检验结果,其 t 值对应的 Sig 值小于 0.05 代表自变量对因变量具有显著影响,下图中,自变量 Connect 对 因变量具有显著影响,而自变量 Call 的影响程度就弱了很多;

综上所有的输出结果,说明 Call、 Connect 与 Return 的拟合效果还挺理想的。 

与Python的结果对比

同样的数据,我们看看Python中的多元线性回归结果:

Python给出的回归方程: Y = -0.01 + 0.09 * Call + 1.19 * Connect;

 SPSS 给出的回归方程: Y = -0.16+ 0.09 * Call + 1.24 * Connect;

如果想要学习一下这个过程,你可能需要:

1.SPSS - 中文版 SPSS 22.0 软件下载与安装教程 - 【附产品授权许可码,永久免费】

2.机器学习 - 多元线性回归 - 一步一步详解 - Python代码实现

本例中用的数据与机器学习 - 多元线性回归 - 一步一步详解 - Python代码实现中的数据是同一份,便于对比。

猜你喜欢

转载自blog.csdn.net/weixin_40683253/article/details/86736428
今日推荐