原文:

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/qq_38003892/article/details/84495172

1 核心思想

通过最小化方差,使得拟合结果无限接近目标结果。

2 通过一元线性方程举例说明

3 通过python实现一元线性拟合

import matplotlib.pyplot as plt

import random

# 用于存储x,y拟合数据

x = []

y = []

# 数据个数

n = 10

# 随机生成x,y

for i in range(n):

x.append(random.randint(0, 9))

y.append(random.randint(0, 9))

print(x, y)

# 根据推到出来的公式计算k,b

sum_xy = 0

sum_x = 0

sum_y = 0

sum_xx = 0

for i in range(n):

sum_xy += x[i] * y[i]

sum_x += x[i]

sum_y += y[i]

sum_xx += x[i] ** 2

print(sum_xy, sum_x, sum_y, sum_xx)

k = (n * sum_xy - sum_x * sum_y) / (n * sum_xx - sum_x ** 2)

b = sum_y / n - k * sum_x / n

print(k, b)

# 根据x计算拟合的y值

new_y = []

for i in range(n):

new_y.append(k * x[i] + b)

# 画出原始数据点以及拟合好的直线

plt.title("Least squares")

plt.xlim(right=10, left=0)

plt.ylim(top=10, bottom=0)

plt.xlabel("x")

plt.ylabel("y")

plt.plot(x, new_y, color='black')

plt.scatter(x, y, color='red')

plt.show()

运行结果(因为数据时随机生成的每次代码运行结果都会不同)

python实现最小二乘法的线性回归_最小二乘法求线性回归的python实现相关推荐

  1. Python编程新手看过来,如何求素数 (Python学习教程)

    本期的Python学习教程是针对新入门Python编程的新手来写的:关于怎么求素数! 一.什么是素数? 素数就是质数,通俗点说就是只能被1和其本身整数的数就是素数(1除外) 举个例子: 2,3,4,5 ...

  2. python实现贝叶斯回归_贝叶斯线性回归(Bayesian Linear Regression)

    贝叶斯线性回归(Bayesian Linear Regression) 标签(空格分隔): 监督学习 @ author : duanxxnj@163.com @ time : 2015-06-19 本 ...

  3. r语言线性回归_(R语言)线性回归:机器学习基础技术

    线性回归: 使用最小二乘法预测定量的结果的一种回归模型. Anscombe数据集 它由统计学家弗朗西斯·安斯库姆(Francis Anscombe)建立,用来强调数据可视化和异常值在数据分析中的重要性 ...

  4. python 结构体数组 定义_一篇文章弄懂Python中所有数组数据类型

    前言 数组类型是各种编程语言中基本的数组结构了,本文来盘点下Python中各种"数组"类型的实现. list tuple array.array str bytes bytearr ...

  5. python迭代器与生成器答案_史上最全 Python 迭代器与生成器

    原标题:史上最全 Python 迭代器与生成器 作者:浪子燕青 链接:http://www.langzi.fun/迭代器与生成器.html 迭代器与可迭代对象 概念 迭代器:是访问数据集合内元素的一种 ...

  6. python泰坦尼克号生存预测论文_泰坦尼克号生存率预测(基于Python)

    背景:泰坦尼克号(RMS Titanic)是英国白星航运公司下辖的一艘奥林匹克级邮轮,于1909年3月31日在爱尔兰贝尔法斯特港的哈兰德与沃尔夫造船厂动工建造.她是当时世界上体积最庞大.内部设施最豪华 ...

  7. python免费入门_python免费入门教程/求完整的Python入门教程

    python不错的入门学习教程或者学习路线?适合新手的 可以去菜鸟教程去学,里面有很多基础入门的教程. 不过你想深入学习的话,学马哥python, 网上有一些免费的教程,课程很系统,讲的通俗易懂 求完 ...

  8. python学好了能干啥_新手该如何学python怎么学好python?_python学好了能干什么

    1)学好python的第一步,就是马上到www.python.org网站上下载一个python版本.我建议初学者,不要下载具有IDE功能的集成开发环境,比如Eclipse插件等. 2)下载完毕后,就可 ...

  9. python中年大叔学编程_中年大叔学编程-Python简单操作文件

    原标题:中年大叔学编程-Python简单操作文件 在计算机中,经常打交道的就是各种文档,用得比较多的软件就是office和记事本来操作文件,那么我们试试用Python来简单读写文件. Open函数的用 ...

  10. python从基础到进阶_无需编程基础,Python从入门到进阶大法

    deffactorial(n): ifn==0: return1 else: returnn * factorial(n-1) 13. 框架与栈调用 Python代码载入框架,框架位于栈中. 函数与参 ...

最新文章

  1. easyui panel 默认折叠 右上角按钮
  2. JDK各版本内容和新特性
  3. BZOJ 1211 树的计数(purfer序列)
  4. ITK:注册IO工厂RegisterIOFactories
  5. WeChat小程序报错Module not found: Can‘t resolve ‘umtrack-alipay‘ in
  6. 猜字游游戏,while执行10次(Python)
  7. Kogito,ergo规则—第2部分:规则的全面执行模型
  8. ImageMagick 安装 window10与错误总结
  9. 新版网易新闻客户端应用源码
  10. linux 混杂模式 收包,Linux下使用混杂模式抓包(2)
  11. 50个精心收集的惊人的jquery绚丽插件--功能全覆盖
  12. 计算hashCode的常见方法
  13. visio阵列_什么软件可以画这种图,Visio怎么画?
  14. 我的大学四年到毕业工作5年的学习路线资源汇总
  15. 学习笔记(01):Linux操作系统入门培训_Linux/Unix基础培训教程视频课程-01.Linux入门培训之_软硬件平台介绍...
  16. 图片放大后变模糊了怎么办?
  17. java浏览 下单界面_Javaweb网上商城项目实战(24)实现订单详情查询功能
  18. office修复找不到msi_安装Office2007,总是提示找不到OfficeMUI.msi
  19. 互联网金融消费利用场景化带动行业发展趋势
  20. Microsoft SQL Server 2000 简体中文企业版+SP4升级补丁

热门文章

  1. linux之scp命令
  2. HTML基础之bit哥的反客为主之道(9)
  3. design短语的用法总结_design的意思、用法、搭配和例句
  4. 就两本书?还能吊起相扑选手?
  5. 这个外挂要上天了!教一千遍都不会的数理技巧,还不如搞懂最根本的概念!
  6. 神抓拍!2020搞笑野生动物摄影大赛,哈哈哈哈哈笑到头掉
  7. 程序员8大终极杀器,你get了几个?
  8. delphi 关闭时缩小到托盘_delphi 实现最小化系统托盘
  9. python中random什么意思_python中的random
  10. 海外服务器搭建网站访问很慢,海外服务器访问速度变慢了怎么办