已知测得某块地,当温度处于15至40度之间时,数得某块草地上小花朵的数量和温度值的数据如下表所示。现在要来找出这些数据中蕴含的规律,用来预测其它未测温度时的小花朵的数量。

测得数据如下图所示:

import matplotlib.pyplot as plt
import numpy as np temperatures = [15, 20, 25, 30, 35, 40]
flowers = [136, 140, 155, 160, 157, 175] def least_square(X, Y):
'''
计算最小二乘法的回归系数 para X: 矩阵,样本特征矩阵,通常包含自变量
para Y: 矩阵,标签向量,通常包含因变量
return: 矩阵,回归系数
'''
# 使用最小二乘法公式计算回归系数 W
# W = (X^T * X)^-1 * X^T * Y
W = (X * X.T).I * X * Y.T
return W # 创建包含样本的特征矩阵 X
# 第一行是全1的数组,用于截距项,第二行是 temperatures 列表中的元素
X = np.mat([[1, 1, 1, 1, 1, 1], temperatures]) # 创建标签矩阵 Y,包含花朵数量数据
Y = np.mat(flowers) # 计算回归系数 W
W = least_square(X, Y) import matplotlib.pyplot as plt # 设置 Matplotlib 的字体样式,以支持中文显示
plt.rcParams['font.sans-serif'] = ['SimHei']
plt.rcParams['axes.unicode_minus'] = False # 绘制散点图,显示温度与花朵数量之间的关系
plt.scatter(temperatures, flowers, color="green", label="花朵数量", linewidth=2)
# 绘制数据点形成的线条
plt.plot(temperatures, flowers, linewidth=1) # 创建 x1 数据,用于生成拟合直线
# linspace 生成15到40之间的100个均匀分布的值
x1 = np.linspace(15, 40, 100) # 根据回归系数 W 计算对应的 y1 值
y1 = W[1, 0] * x1 + W[0, 0]
# W[1, 0]为w,W[0, 0]为b,y1= w*x1 + b # 绘制拟合直线
plt.plot(x1, y1, color="red", label="拟合直线", linewidth=2, linestyle='-.') # 添加图例,并设置位置
plt.legend(loc='lower right') # 显示图形
plt.show()

使用最小二乘法进行线性回归(Python)的更多相关文章

  1. Python实现实现基于最小二乘法的线性回归

    下面展示利用Python实现基于最小二乘法的线性回归模型,同时不需要引入其他科学计算以及机器学习的库. 利用Python代码表示如下: #首先引入数据集x,和y的值的大小利用Python的数据结构:列 ...

  2. 【机器学习】线性回归python实现

    线性回归原理介绍 线性回归python实现 线性回归sklearn实现 这里使用python实现线性回归,没有使用sklearn等机器学习框架,目的是帮助理解算法的原理. 写了三个例子,分别是单变量的 ...

  3. [ch04-01] 用最小二乘法解决线性回归问题

    系列博客,原文在笔者所维护的github上:https://aka.ms/beginnerAI, 点击star加星不要吝啬,星越多笔者越努力. 4.1 最小二乘法 4.1.1 历史 最小二乘法,也叫做 ...

  4. 最小二乘法公式推导及Python实现

    机器学习使用线性回归方法建模时,求损失函数最优解需要用到最小二乘法.相信很多朋友跟我一样,想先知道公式是什么,然后再研究它是怎么来的.所以不多说,先上公式. 对于线性回归方程\(f(x) = ax + ...

  5. 机器学习3- 一元线性回归+Python实现

    目录 1. 线性模型 2. 线性回归 2.1 一元线性回归 3. 一元线性回归的Python实现 3.1 使用 stikit-learn 3.1.1 导入必要模块 3.1.2 使用 Pandas 加载 ...

  6. 机器学习4- 多元线性回归+Python实现

    目录 1 多元线性回归 2 多元线性回归的Python实现 2.1 手动实现 2.1.1 导入必要模块 2.1.2 加载数据 2.1.3 计算系数 2.1.4 预测 2.2 使用 sklearn 1 ...

  7. 线性回归 python 代码实现

    本代码参考自:https://github.com/lawlite19/MachineLearning_Python#%E4%B8%80%E7%BA%BF%E6%80%A7%E5%9B%9E%E5%B ...

  8. 李宏毅机器学习课程笔记-2.5线性回归Python实战

    本文为作者学习李宏毅机器学习课程时参照样例完成homework1的记录. 任务描述(Task Description) 现在有某地空气质量的观测数据,请使用线性回归拟合数据,预测PM2.5. 数据集描 ...

  9. 线性回归 Python实现

    import numpy as np import pylab def plot_data(data, b, m): x = data[:, 0] y = data[:, 1] y_predict = ...

  10. 线性回归 python小样例

    线性回归优点:结果易于理解,计算上不复杂缺点:对非线性的数据拟合不好适用数据类型:数值型和标称型数据horse=0.0015*annualSalary-0.99*hoursListeningToPul ...

随机推荐

  1. ollama安装和运行llama3.1 8b

    ollama安装和运行llama3.1 8b conda create -n ollama python=3.11 -y conda activate ollama curl -fsSL https: ...

  2. C#模拟键盘输入、键状态和监听键盘消息

    模拟键盘输入 模拟键盘输入的功能需要依赖Windows函数实现,这个函数是SendInput,它是专门用来模拟键盘.鼠标等设备输入的函数. 另外和键盘输入相关的函数还有SendKeys,它是Syste ...

  3. JAVA SDK防反编译处理(原创)

    一.前言 网上找的资料是加密Jar包,运行时需要输入密码才能运行,这种方式的加密仅仅能于有main函数入口的加密,而不能满足对外提供SDK.我们的需求是对class文件加密防反编译,但又不影响别人二次 ...

  4. MySQL的索引原理及使用

    MySQL中的索引模型 Mysql中的索引使用的数据结构一般为搜索树,这里的搜索树,一般使用B树,这里补一下数据结构中的B树结构:说B树之前,先顺一个前置的知识点,平衡二叉树: 平衡二叉树 二叉树应该 ...

  5. python pyqt6 颜色弹窗 QColorDialog

    def setColor(self): # 避免窗口置顶后,Dialog被主窗口覆盖,所以需要传递self # 设定默认颜色使用getColor的第一个参数(使用setCurrentColor不生效) ...

  6. AI图像放大工具,图片放大无所不能

    AI图像放大工具,如ESRGAN,对于提高由Stable Diffusion生成的AI图像质量至关重要.它们被广泛使用,以至于许多Stable Diffusion的图形用户界面(GUI)都内置了支持. ...

  7. 【YashanDB数据库】由于网络带宽不足导致的jdbc向yashandb插入数据慢

    问题现象 某客户环境,客户的业务使用jdbc驱动向其他操作系统上的yashandb插入90万条数据,耗时大约30分钟. 问题的风险及影响 影响客户的业务处理效率 问题影响的版本 所有的yashandb ...

  8. Figma 学习笔记 – Auto Layout

    用途 Auto Layout 有点像 CSS 的 Flex, 它还带有 responsive 的概念.使用它以后可以替代掉不少 constraints 的写法. 用法 一个 parent 抱着多个 c ...

  9. 1 月 25 日见|Flutter Forward 活动日程表正式发布!

    2023 年 1 月 25 日 (正月初四),我们将在肯尼亚首都内罗毕举办 Flutter Forward 大会,并同时开启线上直播.本次活动将展示最新的 Flutter 技术更新,包括一个主题演讲以 ...

  10. SuperMap流数据应用技术方案

    流数据应用技术方案针对流数据应用场景,针对流数据的海量.多源.持续等特征,进行持续地获取相关的动态位置,以及持续地分析.处理和挖掘. 本章沿用基于单机SuperMap iServer环境,介绍流数据处 ...