编程拟合
MATLAB函数多项式模型
两个MATLAB®函数可以用一个多项式模型数据。
多项式拟合函数
如果你正在试图创建模型物理情况,总是重要的考虑一个特定的顺序模型是否在你的情况下有意义。
线性模型与Nonpolynomial条款
这个例子展示了如何适应数据与一个线性模型,其中包含nonpolynomial条款。
当一个多项式函数不会产生令人满意的模型数据,你可以尝试使用一个线性模型与nonpolynomial条款。例如,考虑下面的函数是线性的参数 , , ,但非线性的 数据:
你可以计算出未知系数 , , 通过构建和解决一组联立方程和求解参数。以下语法完成组建设计矩阵,每一列表示一个变量用来预测响应(模型中的一个术语)和每一行对应一个变量的观察。
输入t
和y
列向量。
t = [0 0.3 0.8 1.1 1.6 2.3] ';y = (0.6 0.67 1.01 1.35 1.47 1.25) ';
形成了设计矩阵。
X =[(大小(t)) exp (- t) t。* exp (- t)];
系数计算模型。
y = X \
一个=3×11.3983 -0.8860 0.3085
因此,给出的数据模型
现在定期间隔点评估模型和模型与原始数据的阴谋。
T = (0:0.1:2.5)”;Y =[(大小(T)) exp (- T) T * exp (- T)) *;情节(T Y“- - -”、t、y,“o”)、网格在标题(“块模型和原始数据”)
多元回归
这个例子展示了如何使用多元回归模型数据,多个预测变量的函数。
当y是多个预测变量的函数,矩阵方程表达变量之间的关系必须扩展到容纳额外的数据。这就是所谓的多元回归。
衡量一个量
数的值
和
。将这些值存储在向量x1
,x2
,y
,分别。
x1 = [。2。5。6。81。01。1]'; x2 = [.1 .3 .4 .9 1.1 1.4]'; y = [.17 .26 .28 .23 .27 .24]';
一个模型数据的表单
多元回归解决未知系数 , , 通过最小化的平方和的偏差的数据模型(最小二乘匹配)。
构建和解决一组联立方程,形成一个设计矩阵,X
。
X =[(大小(x1)) (x1, x2)];
使用反斜杠符解的参数。
y = X \
一个=3×10.1018 0.4844 -0.2847
常用的数据模型
验证模型,找到最大的绝对值偏差的数据模型。
Y = X *;MaxErr = max (abs (Y - Y))
MaxErr = 0.0038
这个值远小于任何数据值,表明该模型准确的数据。
编程拟合
这个例子展示了如何使用MATLAB函数:
样本的人口普查数据加载census.mat
,它包含了从1790年至1990年美国人口数据。
负载人口普查
这增加了以下两个变量MATLAB工作区。
cdate
是一个列向量包含10的1790年到1990年的增量。流行
是一个列向量与美国人口数量每年对应cdate
。
图数据。
情节(cdate、流行,“罗”)标题(从1790年到1990年美国人口的)
情节展示了一个强大的模式,这表明变量之间有高度的相关性。
计算相关系数
在这个部分的示例中,您确定变量之间的统计相关性cdate
和流行
建模的数据来证明。有关相关系数的更多信息,请参阅线性相关。
计算相关系数矩阵。
corrcoef (cdate、流行)
ans =2×21.0000 0.9597 0.9597 1.0000
对角矩阵的元素代表了完美的相关性与本身和每个变量等于1。非对角元素非常接近1,表明有一种强烈的变量之间的统计相关性cdate
和流行
。
适合一个多项式数据
这部分的应用例子polyfit
和polyval
MATLAB函数模型数据。
计算合适的参数。
[p,错误]= polyfit (cdate流行2);
评估健康。
pop_fit = polyval (p cdate错误);
数据和适合的阴谋。
情节(cdate pop_fit,“- - -”cdate流行,“+”);标题(从1790年到1990年美国人口的)传说(“多项式模型”,“数据”,“位置”,“西北”);包含(“人口普查年”);ylabel (“人口(百万)”);
情节表明,二次多项式拟合数据提供了一个很好的近似。
计算的残差。
res =流行——pop_fit;人物,情节(cdate res,“+”)标题(二次多项式模型的残差的)
注意,残差的情节展现模式,这表明一个二次多项式建模数据可能不适合。
情节和计算置信界限
信心界限置信区间预测的反应。区间的宽度表示的程度的确定性。
这部分的例子适用polyfit
和polyval
到人口普查
样本数据为一个二阶多项式模型边界产生信心。
下面的代码使用一个间隔 ,对应于大样本的95%置信区间。
评估健康和预测误差估计(δ)。
[pop_fitδ]= polyval (p cdate错误);
图数据,健康,和信心。
情节(cdate、流行,“+”,…cdate pop_fit,“g -”,…cdate、pop_fit + 2 *δ“:”,…cdate、pop_fit-2 *δ“:”);包含(“人口普查年”);ylabel (“人口(百万)”);标题(“二次多项式符合置信界限”网格)在
95%的区间表明你有95%的机会,一个新的观察范围内下降。