APP下载

基于Python的线性回归案例分析

2022-12-07何小年段凤华

微型电脑应用 2022年11期
关键词:投诉率因变量支配

何小年,段凤华

(湖南医药学院,医学人文与信息管理学院,湖南,怀化 418000)

0 引言

Python是一种专门处理金融、高级数学、统计和时间序列,便于绘制图像工具,可应用于科学统计、人工智能、教育、Web开发、GUI开发、操作系统开发等诸多领域的编程语言。由荷兰人吉多·范罗苏姆开发的免费开源编程软件,具有免费性、开源性和非美国直接起源性[1]。统计分析常用的软件有Excel、MATLAB、SPSS和R等[2-4],本文尝试应用Python语言进行统计学线性回归内容实训,实现对源于美国的许多教学科研技术产品的替代。

回归分析(regression analysis)主要是探讨自变量与因变量间的相互关系,通过构建自变量与因变量之间相互关系的回归模型,对因变量的未来演变趋进行预测,也可用于理解哪些自变量与因变量的相关程度,并探索这些关系的形式。业界已经开发了许多用于执行回归分析的技术,其中较为常见的回归分析方法包括线性回归、多项式回归、逻辑回归、岭回归、逐步回归等[5]。本文运用Python进行线性回归分析。

1 运用sklearn库构建线性回归模型的基本过程

在Python的第三方库中,以sklearn (scikit-learn)较为常见,是著名的机器学习库,对机器学习方法提供了封装,包括回归(regression)、降维(dimensionality reduction)、分类(classfication)、聚类(clustering)等,拥有完善的文档,这种优点使其上手简单。因为其包含了大量数据集,节约了收集和整理数据集合的时间,所以是目前比较流行的的机器学习与实践的工具。

运用sklearn库构建线性回归模型时,需要经过如下步骤:

(1) 根据预测的目标,确定自变量和因变量;

(2) 绘制散点图,选择回归模型的类型;

(3) 估计模型参数,建立回归模型;

(4) 对回归模型进行检验;

(5) 利用回归模型进行预测。

2 线性回归案例实现

案例1 本文采用文献[6]中《华尔街日报年鉴》(1999)公布的美国部分航空公司业绩案例,案例信息见表1,问题为研究航班正点率与投诉率之间有何关系?若目前已知美国航空公司航班正点率为出发点,预测每10万旅客投诉的人次数是多少?

航班正点率与投诉率之间的线性关系回归分析步骤如下。

(1) 根据案例的已知信息,来确定自变量和因变量。

已知航空公司的航班正点率,预测每10万名旅客投诉的次数,所以,航班的正点率为自变量,每10万名旅客投诉次数为因变量。我们以y表示因变量,x表示自变量。

表1 航空公司航班正点率与乘客投诉率信息

(2) 绘制出所有自变量和因变量的散点图,并观察图形,来判断是否能够建立回归方程。

根据案例中数据所绘的散点图(见图1),航空公司航班正点率与每10万名旅客投诉次数之间具有明显的线性相关,即航空公司航班正点率越大,每10万名旅客投诉次数也就越小。由此,可以绘出航班正点率与每10万名旅客投诉次数之间的线性回归图(如图2)。

图1 航班正点率和投诉率散点图

图2 航班投诉率预测值图

(3) 估计模型参数,建立回归模型

根据图2,可以建立航班正点率与每10万名乘客投诉次数之间的一元线性回归模型如下:

y=α+βx+ε

(1)

这里的α为常数项(即Y轴上的截距),β为回归直线的斜率,ε为随机误差,ε的平方和即为残差,残差是确定线性回归系数拟合性好坏的最主要方法之一。

(4) 对回归模型进行检验

回归方程的精度是表示实际观测值和与回归方程的拟合程度的指标,即对拟合优度进行度量。

(2)

可决系数R2越大即越接近于数字1,则表示回归模型拟合的程度就越好。如果拟合的回归模型精度符合需求,就可以利用拟合出的回归模型,根据已有的自变量数据来估计因变量相对应的结果。

由图3可以看到,模型的拟合优度(即R2=0.779)说明模型的拟合效果很好,可以使用这个模型进行未知数据的预测了。

图3 航班正点率和投诉率回归分析结果截图

(5) 利用回归模型进行预测

由图2显示预测直线,由图3可知α=6.018,β=-0.07即可建立如下的线性回归模型

(3)

假设航空公司航班的正点率等于70%,则使用回归方程预测每10万名旅客投诉次数约为1.088 8;如果航空公司航班的正点率等于80%,使用回归方程预测每10万名旅客投诉次数约为0.384 7。

运行结果如图1~图3所示。

案例2 为了探讨中国部分区域居民平均消费开支及平均可支配收入之间数量关系,通过中国统计年鉴获得2016年中国部分区域居民平均消费开支及平均可支配收入统计数据(见表2)。

表2 2016年中国部分区域居民平均消费开支及平均

问题为对居民消费支出和居民可支配收入作相关分析;对居民消费支出和居民可支配收入进行回归分析;利用所建立的回归模型,预测某地区居民人均可支配收入为60 000元和65 000元时人均消费支出水平的预测值。

采用案例1的代码,运行结果如图4~图6所示。图4是中国部分区域居民平均消费开支和平均可支配收入散点图;图5是中国部分区域居民平均消费开支的预测值预测值图;图6是中国部分区域居民平均消费开支和平均可支配收入回归分析结果图。从图6可能得出中国部分区域居民人均可支配收入和居民人平均消费支出相关系数为0.986 791,表明二者之间有高度的线性相关关系;R2=0.974,说明回归模型拟合程度比较好;线性回归模型为y=1 496.505 210 203 147 7+0.660 270 886 170 55x,其中,y是消费支出,x是可支配收入;当居民人均可支配收入达到60 000元和65 000元时,预计居民人均消费支出y的预测值分别为 41 112.758 380 44和44 414.112 811 29。

图4 中国部分区域居民平均消费开支和平均可支配

图5 中国部分区域居民平均消费开支的预测值图

图6 中国部分区域居民平均消费开支和平均可支配

3 总结

本文采用2个案例的数据,建立了一元线性回归模型,使用Python中的sklearn库构建线性回归模型,估计了变量之间的相关系数,对因变量进行了估计,从而得出了比较好的回归模型和预测的结论,在教学中可以采用直观的图形方法来揭示统计学中的较为复杂的数学模型。为学生提供直观认识,解决了课程中概念抽象不直观、难理解的难题,可以加深学生对知识的理解,实现了复杂问题简单化,对于激发学生学习兴趣、从而改善教学效果,提高教学质量,具有重要的作用。

猜你喜欢

投诉率因变量支配
调整有限因变量混合模型在药物经济学健康效用量表映射中的运用
被贫穷生活支配的恐惧
适应性回归分析(Ⅳ)
——与非适应性回归分析的比较
跟踪导练(四)4
探讨护患沟通技巧在门诊注射室的运用效果
门诊输液室应用人性化护理的效果观察
论如何在智能电管家推广同时降低投诉率
偏最小二乘回归方法
基于决策空间变换最近邻方法的Pareto支配性预测
随心支配的清迈美食探店记