polyfit線性擬合函式

2021-10-09 09:27:26 字數 837 閱讀 6110

polyfit函式是matlab中用於進行曲線擬合的乙個函式。其數學基礎是最小二乘法曲線擬合原理。曲線擬合:已知離散點上的資料集,即已知在點集上的函式值,構造乙個解析函式(其圖形為一曲線)使在原離散點上盡可能接近給定的值。

呼叫方法:polyfit(x,y,n)。用多項式求過已知點的表示式,其中x為源資料點對應的橫座標,可為行向量、矩陣,y為源資料點對應的縱座標,可為行向量、矩陣,n為你要擬合的階數,一階直線擬合,二階拋物線擬合,並非階次越高越好,看擬合情況而定。

matlab polyfit 做出來的值從左到右表示從高次到低次的多項式係數。

例子: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

多項式在x處的值y可用下面程式計算。

y=polyval(a,x,m)

線性:m=1, 二次:m=2, …

polyfit的輸出是乙個多項式係數的行向量。為了計算在xi資料點的多項式值,呼叫matlab的函式polyval。

例:polyval用法示例結果:

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')

polyfit多項式擬合函式的用法

polyfit函式是matlab中用於進行曲線擬合的乙個函式。其數學基礎是最小二乘法曲線擬合原理。曲線擬合 已知離散點上的資料集,即已知在點集上的函式值,構造乙個解析函式 其圖形為一曲線 使在原離散點上盡可能接近給定的值。polyfit x,y,n 其中 x,y為已知資料點向量,分別表示橫 縱座標,...

線性擬合函式

線性擬合函式 regress 呼叫格式 b regress y,x b,bint,r,rint,stats regress y,x b,bint,r,rint,stats regress y,x,alpha 該函式求解線性模型 y x 是p 1的引數向量 是服從標準正態分佈的隨機干擾的n 1的向量 ...

c 多項式擬合polyfit實現

在numpy中有很方便的多項式擬合函式,c 中則沒有,需要自己實現。在網上參考了一些,但是都不能令人滿意,其中有借用opencv的,我就做乙個曲線擬合,引入龐大的opencv有點小題大做了。也有使用eigen庫的,這個還差強人意,先記錄下來。double polyeval eigen vectorx...