前言
最小二乘法Least Square Method,做为分类回归算法的基础,有着悠久的历史(由马里·勒让德于1806年提出)。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。最小二乘法还可用于曲线拟合。其他一些优化问题也可通过最小化能量或最大化熵用最小二乘法来表达。

导入包

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
from sklearn.linear_model import LinearRegression

根据预测目标,确定自变量和因变量:

data = pd.read_excel(
'D:\example_csv\data.xlsx')
y = data['销售额(万元)'].values.reshape(-1, 1)#数据变为ndarray类型
x = data['广告费用(万元)'].values.reshape(-1, 1)

部分数据如下:

绘制散点图,确定回归模型类型:

plt.figure(figsize = (4,4)) #改变图示大小
plt.xlabel('广告投放费用')
plt.ylabel('销售额')
plt.scatter(x,y,marker = 'o',color = 'red',label = '销售额',s = 40)
#label作为图例
plt.legend(loc = 'best')
plt.show()


估计模型参数,建立线性回归模型:
Y = aX +b +e

lrModel = LinearRegression()
lrModel.fit(x,y) #使用自变量x,y训练模型lrModel.coef_    #不要漏掉这两个下划线
lrModel.intercept_


就此可以得到一个简单的线性回归方程: 销售额 = 17.32*广告费用+291.90

对回归模型进行验证和预测:

lrModel.score(x,y)
y2 = pd.DataFrame({'广告费用(万元)':[10]
})#取第11个数据作为预测
lrModel.predict(y2)

结果越接近1,说明模型拟合效果越好

预测结果符合线性回归方程

画出线性回归方程:

y2 = 17.32*x+291.90
plt.plot(x,y2,color = 'blue',linewidth = '4')
plt.scatter(x,y,marker = 'o',color = 'red',label = '销售额',s = 40)

使用最小二乘法求解回归方程并用matplotlib画出回归方程相关推荐

  1. 【Python】怎么用matplotlib画出漂亮的分析图表

    特征锦囊:怎么用matplotlib画出漂亮的分析图表 ???? Index 数据集引入 折线图 饼图 散点图 面积图 直方图 条形图 关于用matplotlib画图,先前的锦囊里有提及到,不过那些图 ...

  2. 用python画出简单笑脸画法_【Python】怎么用matplotlib画出漂亮的分析图表

    特征锦囊:怎么用matplotlib画出漂亮的分析图表 ? Index 数据集引入 折线图 饼图 散点图 面积图 直方图 条形图 关于用matplotlib画图,先前的锦囊里有提及到,不过那些图都是比 ...

  3. python怎么画出好看的统计图_python数据可视化之如何用matplotlib画出漂亮美观的趋势图...

    这几天完成了一个小项目,matplotlib画出的图像总是不理想,很多细节需要调节,譬如横坐标的控制.图例的控制.周边留白的控制还有图片大小尺寸的控制,都需要根据业务需求来调整. 下面我一步步来说明 ...

  4. 用python画漂亮图片-使用 Python/matplotlib 画出漂亮的论文插图

    论文中画出各种绚烂的插图,都是用一些什么样的软件画出来的.本文介绍 Python 的绘图模块 matplotlib: Python plotting.适用于从 2D 到 3D,从标量到矢量的各种绘图. ...

  5. 用python画漂亮图-使用 Python/matplotlib 画出漂亮的论文插图

    论文中画出各种绚烂的插图,都是用一些什么样的软件画出来的.本文介绍 Python 的绘图模块 matplotlib: Python plotting.适用于从 2D 到 3D,从标量到矢量的各种绘图. ...

  6. 用Python的turtle和matplotlib画出圆满和爱心

    马上就要到六一儿童节了,小朋友很喜欢画画,这里就用Pyhton来画一些简单形状. 首先是圆形,圆形的寓意是圆满.完美.团圆.优胜和团结.圆形在形状上是一个平面中点到定点距离相等的图形,象征着圆满和完美 ...

  7. python读取csv表格的数据并用matplotlib画曲线图

    前言 python读取csv表格的数据并用matplotlib回曲线图 1.导入相关库 import matplotlib.pyplot as plt import pandas as pd impo ...

  8. python绘制立体扇形_Python如何用Matplotlib画出优雅的扇形图?

    colors = [plt.cm.Accent(i) for i in np.linspace(0, 1, country_metrics.shape[0])]     #制作颜色,从0到1的区域内均 ...

  9. UCSC寻找基因位置并用IGV画出基因转录示意图

    寻找基因位置并寻找出基因转录示意图 我们这里教大家采用两种方法进行基因转录示意图的查找,一种是直接在UCSC里面进行查找,不过不够方便,并且背景有条纹.另一种是下载基因注释文件到IGV基因可视化软件里 ...

最新文章

  1. CUDA 内存统一分析
  2. Java项目:前后端分离疫情防疫平台设计和实现(java+springmvc+VUE+node.js+mybatis+mysql+springboot+redis+jsp)
  3. 如何检查字符串是否包含特定单词?
  4. vue使用sweetalert2弹窗插件
  5. C++实现邻接表存储的图及bfs遍历
  6. jpa多表关联查询_Spring Boot 整合mybatis如何自定义 mapper 实现多表关联查询
  7. 应该怎么样学习前端呢?
  8. 代码调试技巧小集合(C语言描述,但C/C++/Pascal通用)
  9. 为什么太重感情的人基本都是穷人?
  10. java项目整合mybatis_JavaWeb项目整合Spring,SpringMVC,Mybatis框架
  11. 【待续】海思Hi3520A学习笔记
  12. Fildder主菜单----Edit介绍
  13. iOS 为View添加蒙版 当点击背景View移除
  14. 公共关系礼仪实务章节测试题——公共关系的类型(一)
  15. RHCE-RHEL 7 系统简介
  16. 模仿360安全卫士项目笔记8
  17. 利用python和Tushare自动更新A股每日数据
  18. 【单片机学习】独立按键的扩展应用
  19. 手把手教你pfx证书转pem
  20. 计算机桌面任务栏跳到,电脑桌面任务栏跑到左边去了

热门文章

  1. IT十八掌Java基础 网络编程
  2. oracle 块大小,如何查看Windows上文件系统块的大小
  3. 亚马逊开放个人卖家验证入口?亚马逊卖家验证到底怎么搞?
  4. css绝对定位的三种方法
  5. 【产品细节一】指纹解锁
  6. 前端必看!微信都在用的开源动效方案【PAG动效】
  7. php怎么定义浮点型,php:浮点型(float)数据类型实例详解
  8. Java 的浮点型数据
  9. ROS学习|Behavoir Tree(BT树)--c++实现第二节
  10. MDIN380 SDI转VGA 转LVDS VGA转SDI 高清视频处理 MDIN380芯片 PCB代码方案资料