MATLAB擬合工具箱函式的使用

2021-10-05 14:24:41 字數 2366 閱讀 5218

matlab擬合曲線的方法有很多,針對不同的函式型別應選用合適的擬合方法。

按照擬合方法來進行劃分,一般可將待擬合的函式分為曲線/曲面擬合多元函式擬合

穩健性robust

擬合效果評估

擬合工具箱主要涉及的函式有:fit fitype等。 這裡以一元線性擬合為例進行說明:

%matlab擬合工具箱的使用

xdata = x_fit_4;ydata = y_fit_4;

% f = fittype(

'k*x+b'

) %採用自定義函式

[fit1, estimate1]

= fit(xdata,ydata,'poly1'

) % 針對原始資料的擬合

fdata = feval(fit1, xdata)

; % 求得擬合資料

i = abs(fdata-ydata)

> 1.5*std(ydata)

;% 剔除點計算方法outliers = excludedata(xdata, ydata, 'indices', i) % 找到對應的剔除資料點

[fit2, estimate2]

= fit(xdata, ydata, 'poly1',... 'exclude', outliers) % 針對剔除異常點後的擬合

[fit3, estimate3]

= fit(xdata, ydata, 'poly1',... 'robust', 'on'

) % 採用穩健性擬合

plot(fit1,'r-',xdata,ydata,'k.',outliers,'m*'

) % 繪製擬合曲線,原始資料,剔除資料點。

hold on

plot(fit2,'c--'

)plot(fit3,'b:'

)

輸出結果如下:

fit1 =

linear model poly1:

fit1(x) = p1x + p2

coefficients (with 95% confidence bounds):

p1 = 1.545 (1.156, 1.933)

p2 = 4.901 (3.619, 6.184)

estimate1 = 包含以下欄位的 struct:

sse: 454.1470

rsquare: 0.5046

dfe: 62

adjrsquare: 0.4966

rmse: 2.7065

fit2 =

linear model poly1:

fit2(x) = p1x + p2

coefficients (with 95% confidence bounds):

p1 = 1.517 (1.186, 1.847)

p2 = 4.718 (3.625, 5.812)

estimate2 = 包含以下欄位的 struct:

sse: 317.3518

rsquare: 0.5838

dfe: 60

adjrsquare: 0.5768

rmse: 2.2998

fit3 =

linear model poly1:

fit3(x) = p1*x + p2

coefficients (with 95% confidence bounds):

p1 = 1.513 (1.145, 1.881)

p2 = 4.712 (3.498, 5.927)

estimate3 = 包含以下欄位的 struct:

進一步採用繪圖視窗的prediction bounds for function 繪圖選項可以得到函式擬合的邊界圖如下:

多元函式的擬合,建議一般先將其轉換為線性擬合方式,具體參考我的另外一篇部落格

matlab求解模型待定係數

擬合工具箱的使用

MATLAB模糊邏輯工具箱函式

36 說明 本文件中所列出的函式適用於matlab5.3以上版本,為了簡明起見,只列出了函式名,若需要進一步的說明,請參閱matlab的幫助文件。1 gui工具 anfisedit 開啟anfis編輯器gui fuzzy 呼叫基本fis編輯器 mfedit 隸屬度函式編輯器 ruleedit 規則編...

MATLAB模糊邏輯工具箱函式

說明 本文件中所列出的函式適用於matlab5.3以上版本,為了簡明起見,只列出了函式名,若需要進一步的說明,請參閱matlab的幫助文件。1 gui工具 anfisedit 開啟anfis編輯器gui fuzzy 呼叫基本fis編輯器 mfedit 隸屬度函式編輯器 ruleedit 規則編輯器和...

CRF的matlab工具箱

最近在學習crf,由於 較複雜,網上有很多人開發了工具箱,推薦幾個crf的matlab工具箱 1維crf 2維crf 最近在學習crf,由於 較複雜,網上有很多人開發了工具箱,推薦幾個crf的matlab工具箱 1維crf 2維crf drf 還有兩個經常用crf的人主頁,他們都開發了一些工具箱 s...