最小二乘法
最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小
最小二乘法是解决曲线拟合问题最常用的方法。
其基本思路是:事先选定的一组线性无关的函数, 是待定系数 ,拟合准则是使实验数据(笛卡尔坐标系的坐标数据)与待拟合曲线的距离的平方和最小,称为最小二乘准则.
总结来说,我们通常就是使用最小二乘法来做曲线拟合,通过计算最小值来获得多项式的系数与误差数值.
(关于最小二乘法的原理大家可以自行了解,甚至可以让你重新感知到数学逻辑之美)
Python类库
NumPy
NumPy 是一个 Python 包。 它代表 “Numeric Python”。 它是一个由多维数组对象和用于处理数组的例程集合组成的库。支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。
Matplotlib
Matplotlib 是 Python 的绘图库。 它可与 NumPy 一起使用,提供了一种有效的 MatLab 开源替代方案。
代码实现
这里我们举一个例子来展示下,相信下面这道数学题大家一定不陌生.
某公司为合理定价,在试销期间得到单价x(单位:元)与销售量y(单位:件)的数据如表:
单价(x) 80 82 84 86 88 90
销量(y) 90 84 83 80 75 68
如果换做之前,我们肯定就熟练的直接开始列方程解未知数了,但是现在我已经失去了这项能力,那么不妨使用我们准备好的拟合曲线让程序来帮我们计算下.
话不多说,直接上代码
import matplotlib.pyplot as plt
import numpy as np
# 准备数据,将