polyfit线性拟合函数
polyfit函數(shù)是matlab中用于進(jìn)行曲線擬合的一個函數(shù)。其數(shù)學(xué)基礎(chǔ)是最小二乘法曲線擬合原理。曲線擬合:已知離散點上的數(shù)據(jù)集,即已知在點集上的函數(shù)值,構(gòu)造一個解析函數(shù)(其圖形為一曲線)使在原離散點上盡可能接近給定的值。
polyfit
調(diào)用方法:polyfit(x,y,n)。用多項式求過已知點的表達(dá)式,其中x為源數(shù)據(jù)點對應(yīng)的橫坐標(biāo),可為行向量、矩陣,y為源數(shù)據(jù)點對應(yīng)的縱坐標(biāo),可為行向量、矩陣,n為你要擬合的階數(shù),一階直線擬合,二階拋物線擬合,并非階次越高越好,看擬合情況而定。
matlab polyfit 做出來的值從左到右表示從高次到低次的多項式系數(shù)。
例子:
x = (0: 0.1: 2.5)';
y = erf(x);
p = polyfit(x,y,6)
p =
0.0084 -0.0983 0.4217 -0.7435 0.1471 1.1064 0.0004
則y=0.0084x^6-0.0983x^5+0.4217x^4-0.7435x^3+0.1471x^2+1.1064x+0.0004
polyval
多項式在x處的值y可用下面程序計算。
y=polyval(a,x,m)
線性:m=1, 二次:m=2, …
polyfit的輸出是一個多項式系數(shù)的行向量。為了計算在xi數(shù)據(jù)點的多項式值,調(diào)用MATLAB的函數(shù)polyval。
例:
polyval用法示例結(jié)果:
x=0:0.1:1;
y=[-0.447 1.978 3.28 6.16 7.08 7.34 7.66 9.56 9.48 9.30 11.2];
A=polyfit(x,y,2);
z=polyval(A,x);
plot(x,y,'r*',x,z,'b')
總結(jié)
以上是生活随笔為你收集整理的polyfit线性拟合函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Android性能分析工具Systrac
- 下一篇: 一棵树的生物量怎么算_2019玩花园 |