拟合插值MATLAB实现

MATLAB 拟合插值实例

拟合:求过已知有限个数据点的近似函数,不要求过所有的已知数据点,只要在某种意义下(一般情况下考虑其误差的平方和最小,即最小二乘法),它在这些点上的总偏差最小,主要用来反映数据的基本趋势

一、拉力与伸长量

1.问题背景
下表给出了在一根丝线上施加拉力S后每英寸的伸长量,尝试画出数据拟合 e = cS ,从图上估计 c

数据

2.问题分析
假设有模型 e = cS,等价于求解最小二乘问题

最小二乘法

3.图形绘制
如果题目没有给出拟合的模型,通常我们将数据做成散点图,直观的去判断应该用什么样的 曲线去拟合

一般常用曲线

使用 scatter(X,Y) 函数绘制散点图

绘制散点图

根据散点图初步推断数据关系为线型关系,利用MATLAB对数据做线性拟合

二、人口曲线

1.问题背景
已知某地区10年间的人口数据,试对该地区人口进行线性拟合(经资料检索可知人口模型一般涉及Logistic曲线模型)

数据

2.图形绘制
x = [1:1:10];
y = [3282,3364,3416,3438,3441,3441,3444,3446,3448,3447];
scatter(x,y')
xlabel("time")
ylabel("population")

散点图

3.数据建模
从上图可以看到人口随时间的变化是一个非线性过程,这里使用Logistic曲线模型进行拟合

线性转换

拟合结果如下图

拟合曲线

最终得到的拟合曲线为

拟合结果

(つづく)

拟合插值MATLAB实现
https://baifabaiquan.cn/2020/12/31/Matlab拟合插值/
作者
白发败犬
发布于
2020年12月31日
许可协议