评估曲线拟合
此示例显示了如何使用曲线拟合。
加载数据并拟合多项式曲线
加载人口普查curvefit = fit(cdate,pop,'poly3',,,,“正常化”,,,,'在')
curvefit =线性模型poly3:curvefit(x)= p1*x^3 + p2*x^2 + p3*x + p4其中x通过平均1890和std 62.05系数(具有95%置信度):p1 = 0.921 = 0.921(-0.9743,2.816)p2 = 25.18(23.57,26.79)p3 = 73.86(70.33,77.39)p4 = 61.74(59.69,63.8)
输出显示拟合模型方程,拟合系数和拟合系数的置信界。
绘制拟合,数据,残差和预测边界
情节(曲线,cdate,pop)
绘制残差拟合。
情节(曲线,cdate,pop,“残差”)
在拟合上绘制预测界限。
情节(曲线,cdate,pop,'predfunc')
评估指定点的拟合
通过指定值的值来评估特定点的拟合X
,使用此表格:y = fittedModel(x)
。
Curvefit(1991)
ANS = 252.6690
评估许多点的拟合值
评估值的模型,以推断到2050年。
xi =(2000:10:2050)。';曲线(XI)
ans =6×1276.9632 305.4420 335.5066 367.1802 400.4859 435.4468
获得这些值的预测界限。
ci = predint(curvefit,xi)
CI =6×2267.8589 286.0674 294.3070 316.5770 321.5924 349.4208 349.7275 384.6329 378.7255 422.2462 408.5919 462.3017
绘制跨推断拟合范围的拟合和预测间隔。默认情况下,拟合在数据范围内绘制。要查看从拟合中推断的值,请在绘制拟合之前将轴的上部X限制设置为2050。要绘制预测间隔,请使用predobs
或者preatfun
作为情节类型。
情节(CDATE,POP,'o')xlim([1900,2050])持有在情节(曲线,“ predobs') 抓住离开
获取模型方程
输入拟合名称以显示模型方程,拟合系数和拟合系数的置信界。
曲线
curvefit =线性模型poly3:curvefit(x)= p1*x^3 + p2*x^2 + p3*x + p4其中x通过平均1890和std 62.05系数(具有95%置信度):p1 = 0.921 = 0.921(-0.9743,2.816)p2 = 25.18(23.57,26.79)p3 = 73.86(70.33,77.39)p4 = 61.74(59.69,63.8)
要仅获取模型方程,请使用公式
。
公式(曲线)
ans ='p1*x^3 + p2*x^2 + p3*x + p4'
获取系数名称和值
按名称指定系数。
p1 = curvefit.p1
P1 = 0.9210
p2 = curvefit.p2
P2 = 25.1834
获取所有系数名称。查看拟合方程(例如,f(x)= p1*x^3+...
)查看每个系数的模型项。
系数(CurveFit)
ans =4x1单元{'p1'} {'p2'} {'p3'} {'p4'}
获取所有系数值。
系数(CurveFit)
ans =1×40.9210 25.1834 73.8598 61.7444
在系数上获得信心界限
在系数上使用置信度范围来帮助您评估和比较拟合。系数上的置信度确定了其准确性。相距遥远的界限表示不确定性。如果线性系数的边界交叉零,则意味着您不能确定这些系数与零不同。如果某些模型项的系数为零,则它们没有帮助。
contint(curvefit)
ans =2×4-0.9743 23.5736 70.3308 59.6907 2.8163 26.7931 77.3888 63.7981
检查合适的统计数据
要在命令行中获得拟合优度统计信息,您可以:
打开曲线钳工应用程序。在曲线钳工标签,在出口部分,单击出口并选择导出到工作区将您的合适性和合适性导出到工作区。
指定
gof
使用合身
功能。
重新创建指定的拟合gof
和输出参数以获取合适的统计信息和拟合算法信息。
[curvefit,gof,output] = fit(cdate,pop,'poly3',,,,“正常化”,,,,'在')
curvefit =线性模型poly3:curvefit(x)= p1*x^3 + p2*x^2 + p3*x + p4其中x通过平均1890和std 62.05系数(具有95%置信度):p1 = 0.921 = 0.921(-0.9743,2.816)p2 = 25.18(23.57,26.79)p3 = 73.86(70.33,77.39)p4 = 61.74(59.69,63.8)
gof =带有字段的结构:SSE:149.7687 RSQUARE:0.9988 DFE:17 ADGRSQUARE:0.9986 RMSE:2.9682
输出=带有字段的结构:数字:21 numparam:4个残差:[21x1 double] jacobian:[21x4 double] exitflag:1算法:'qR分解和求解'迭代:1
绘制残差的直方图以寻找大致正常的分布。
直方图(输出。保留,10)
绘制拟合,数据和残差
情节(曲线,cdate,pop,'合身',,,,“残差”) 传奇地点西南子图(2,1,1)传奇地点西北
查找方法
列出您可以使用的每种方法。
方法(CurveFit)
类CFIT的方法:ArgNames crint crominula numcoeffs setOptions类别依赖名称indepnames plot plot类型cfit区分集成predint coeffnames feval islinear islinear probnames coeffvalues fitoptions numargs pofvalues pofvalues
使用帮助
命令找出如何使用合适方法。
帮助cfit/差异
区分区分拟合结果对象。deriv1 =区分(fitobj,x)在x指定的点处区分模型fitobj,并在deriv1中返回结果。FitOBJ是由拟合或CFIT函数生成的拟合对象。x是矢量。deriv1是一个与x相同的向量。从数学上讲,deriv1 = d(fitobj)/d(x)。[deriv1,deriv2] =区分(fitobj,x)分别计算模型fitobj的第一个和第二个衍生物,deriv1和deriv2。另请参见CFIT/集成,拟合,CFIT。