Python 散点图线性拟合_Python一元线性回归分析实例:价格与需求的相关性

来自烟水暖的学习笔记

回归分析(Regression analysis)

回归分析(Regression analysis),是研究因变量与自变量之间相关性的一种数学方法,并将相关性量化,即得到回归方程。我们可以通过回归方程(回归预测模型)来预测因变量的变化。

回归分析的分类:

1) 按自变量的个数,可以分为一元回归,多元回归

2)按变量相关性的形状(回归线)是否为直线型,可分为线性回归,非线性回归。

下面,我们将通过python工具来理解最简单的回归分析,即一元线性回归,并了解回归分析的步骤。

想要更多了解回归分析包含的内容,可参考下面内容

烟水暖:详细解读Excel回归分析:价格与需求的相关性​zhuanlan.zhihu.com

一元线性回归

顾名思义,就是只包含一个自变量,且与因变量的关系是呈线性的回归分析,其回归方程(回归模型)可用下面的方程表示:

y=bx+a (其中:y为因变量,x为自变量,b为回归系数或斜率,a为截距)

简单实例

我们将通过分析产品A的单价与销量之间的关系,来预测当产品A的定价为x,市场的需求量y将会是多少,这样我们就能知道该向供应商订购多少产品A。

数据如下:

表格数据来自coursera中的consumer analytic课程。

price_demand.csv(百度云)

4bfe71f8c83e46330ff16ee13a7bd0ec.png
  1. 确定变量,导入数据

438dac8fd688718479c36bd4d4826b19.png

2. 探索性数据分析,绘制散点图,观察变量之间关系及趋势变化,确定回归类型

#绘制散点图,观察Price,demand的相关性

1d3554beb44e4c6b26caf27d04a3e87a.png

由图可见,Price与Demand具有较强的负相关性,即Price增加,Demand反而减少。

我们也可通过下面函数观察Price与Demand的相关系数(相关系数R是描述变量之间的相关性,范围在[-1,1]之间,R>0,则为正相关,R<0,则为负相关;R的绝对值越接近于1,相关性越强,反之,相关性越弱)

649cd480aa3d6b2258163bb1c2223ac3.png

3. 建立回归模型,并进行模型训练

在统计学中,一般我们是通过“最小二乘法”直线拟合来执行线性回归分析。

84e773d6c90136604e26b0cec5fe935a.png

4. 检验模型的拟合程度

查看模型的判断系数,判断其拟合度。

43b7e51b0f0d8be657272b3993976f73.png

判断系数为0.8679788013877346,可见模型的拟合程度还是较高的。

下面将拟合回归线放入散点图,直观的感受模型的拟合程度:

72735fde49078623b77914af2c755de4.png

最后查看回归方程的内容:

	模型包含的内容:
	参数:
	fit_intercept: 默认为true,是否计算截距
	normalize: 是否将数据归一化
	copy_X:是否复制x的值,默认是复制,否则覆盖原来x的值
	n_jobs:计算模型使用的作业数,也叫核数
	
	属性:
	coef_:斜率
	intercept_:截距
	
	方法:
	fit() 拟合线性模型
	get_params() 获取估计量的参数,即返回上面四个参数的内容
	predict() 使用模型预测结果
	score()  返回判定系数 ^2,判定系数描述的是回归方程的拟合优度,值越接近于1,拟合度越高
	set_params()设置估计量的参数的内容

这里,我们只需要拿到下面内容,即可知道回归模型的内容。

3bc3130f184656820fbc14e98bf1ff76.png

即Price与Demand呈负相关性,且可用 y=-0.895x+10.128 来描述其关系。接下来,我们便可用这个模型来预测需求。

5. 使用回归模型预测

通过模型的预测方法,我们可预测当产品A的价格为8,或8.2,对应的需求为2.96,2.78.

53606af38e3212d0aea3a70ea980dc43.png

总结

通过上面的学习,我们可用了解到最简单的线性回归分析,理解其如何帮我们来分析Price和Demand之间的关系,并由此预测Demand。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值