關於用matlab擬合一組資料得到函式的表示式

時間 2021-05-02 11:23:21

1樓:匿名使用者

這個太難了,或者說是有太多的不確定性

因為連乙個大概的函式形式都沒有給出來

也就是說可能性太多,這組資料可以擬合出無數多種函式結果

如果什麼函式形式都不給出的話,或者用多項式擬合吧

下面是嘗試用11次多項式擬合你的資料

x=[9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39];

y=[9,12,18,21,12,26,29,36,50,101,192,245,233,117,28,9];

p=polyfit(x,y,11);

xx=linspace(9,39,100);

yy=polyval(p,xx);

plot(x,y,'o');hold on

plot(xx,yy,'r');hold off

legend('資料','擬合','location','northwest');

title(poly2str(p,'x'));

如果是正態分佈

x=[9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39];

y=[9,12,18,21,12,26,29,36,50,101,192,245,233,117,28,9];

fun=@(p,x) p(1)*exp(-(x-p(2)).^2./2/p(3)^2);

p=nlinfit(x,y,fun,[250 32 10]);

xx=linspace(9,39,100);

yy=fun(p,xx);

plot(x,y,'o');hold on

plot(xx,yy,'r');hold off

legend('資料','擬合','location','northwest');

其中得到的p是有3個數的向量

函式形式是

p(1)*exp(-(x-p(2)).^2./2/p(3)^2)

p(1)是幅度,p(2)是中心橫座標,p(3)是標準差

2樓:

如果沒有模型的話只能畫出圖來看它像什麼。。。要不就乙個個模型去試驗

用matlab擬合一組資料,函式的表示式是什麼?

3樓:匿名使用者

用matlab擬合一組資料,得到函式的表示式我的資料是

x=(9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39)

y=(9,12,18,21,12,26,29,36,50,101,192,245,233,117,28,9)

至於具體怎麼得到x與y的函式關係,在matlab上的具體操作,可能性太多,這組資料可以擬合出無數多種函式結果。

如果什麼函式形式都不給出的話,下面以11次多項式舉例來擬合你的資料:

1.用多項式擬合

x=(9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39)

y=(9,12,18,21,12,26,29,36,50,101,192,245,233,117,28,9)

p=polyfit(x,y,11)

xx=linspace(9,39,100)

yy=polyval(p,xx)

plot(x,y,'o');hold on

plot(xx,yy,'r');hold off

legend('資料','擬合','location','northwest');

title(poly2str(p,'x'));

2.如果是正態分佈

x=(9,11,13,15,17,19,21,23,25,27,29,31,33,35,37,39)

y=(9,12,18,21,12,26,29,36,50,101,192,245,233,117,28,9)

fun=@(p,x) p(1)*exp(-(x-p(2)).^2./2/p(3)^2);

p=nlinfit(x,y,fun,[250 32 10]);

xx=linspace(9,39,100);

yy=fun(p,xx);

plot(x,y,'o');hold on

plot(xx,yy,'r');hold off

legend('資料','擬合','location','northwest');

matlab是matrix&laboratory兩個詞的組合,意為矩陣工廠(矩陣實驗室)。matlab可以進行矩陣運算、繪製函式和資料、實現演算法、建立使用者介面、連線其他程式語言的程式等,主要應用於工程計算、控制設計、訊號處理與通訊、影象處理、訊號檢測、金融建模設計與分析等領域。

用matlab擬合一組資料,要求得出函式表示式

4樓:匿名使用者

^根據給定的資料bai,我們可以假定

du函式表示式為

y=b1+b2*x+b3*x^zhi2+b4*x^3+b5*x^4;

所以上述函dao數版可以用matlab的regress()多權元線性回歸分析函式來擬合。實現過程如下:

a=[1.75,0.26;2.

25,0.32;2.5,0.

44;2.875,0.57;2.

686,0.50;2.563,0.

46];

x=a(:,1),y=a(:,2)

x=[ones(length(y),1),x,x.^2,x.^3,x.^4];

b=regress(y,x)

x1=linspace(1.5,3,50);

y1=b(1)+b(2)*x1+b(3)*x1.^2+b(4)*x1.^3+b(5)*x1.^4;

plot(x,y,'k*',x1,y1,'r-')

grid on

xlabel('x'),ylabel('y')

執行結果

5樓:昱婷漫步

從資料描bai

點圖來看,它可以用多項式du來擬合zhi

**:clear all;

clc;

close all;

x=[1.75,2.25,2.5,2.875,2.686,2.563];

y=[0.26,0.32,0.44,0.57,0.50,0.46];

plot(x,y,'r*')

[p,s]=polyfit(x,y,5)  %引數改為1就是線性擬dao合

y1=polyval(p,x)

hold on;

plot(x,y1,'b.')

五次版多項式擬合生成的權函式值與原資料基本重合:

五次多項式,從最高次項的係數到常數項,依次為p的值,所以:

y=-3.8276x^5+ 47.6583x^4 -235.8777x^3+579.6790x^2 -706.4245x+341.2326

6樓:匿名使用者

程式如下:

x=[1.75,2.25,2.5,2.875,2.686,2.563];

y=[0.26,0.32,0.44,0.57,0.50,0.46];

plot(x,y,'g.','markersize',25);%%%有這個是先描點,看出大致是什麼圖,這裡看到像二次曲線的回。答

hold on ;

p3=polyfit(x,y,2);

%%%%%%下面這個是擬合後的p3公式,式子為什麼是這個可以由上面擬合程式得出,放在乙個圖裡面看效果

x2=0:0.5:4;

y2=0.1701*x2.^2-0.4965*x2+0.6027;

plot(x2,y2,'b');

7樓:匿名使用者

資料bai不多哈

clc;clear all

x=[1.75, 2.25, 2.5, 2.875, 2.686, 2.563];

y=[0.26,0.32,0.44,0.57,0.50,0.46];

p=polyfit(x,y,3);%四次

du擬合

zhiplot(x,y,'r--')

hold on

y1=polyval(p,x);%得出

dao擬合結

回果plot(x,y1,'b-')

xlabel('x')

ylabel('y')

legend('擬合前

答','擬合後')

8樓:科技數碼答疑

擬合函式表示式是咋麼的,是多項式還是指數,是1次函式還是二次函式??

急matlab中用cftool工具資料擬合之後擬合結果

無和有 r 2衡量的是迴歸方程整體的擬合度,是表達因變數與所有自變數之間的總體關係。r 2等於迴歸平方和在總平方和中所佔的比率,即迴歸方程所能解釋的因變數變異性的百分比。實際值與平均值的總誤差中,迴歸誤差與剩餘誤差是此消彼長的關係。因而回歸誤差從正面測定線性模型的擬合優度,剩餘誤差則從反面來判定線性...

matlab簡單問題關於,matlab簡單問題 關於fzero

醉蝶翩翩 我也很好奇 就試了一下 fzero x x 2 1,0.05 時,ans 1,fzero是一個數值搜尋過程,依賴於函式特性,值的指定,以及matlab所能識別的最小步長。如果想計算更準確,可以用符號函式求解0點。符號函式不用關心具體的函式值,完全當做符號處理,所以,不存在上述不穩定因素。 ...

用matlab做牛頓迭代法,用matlab如何編寫牛頓迭代法問題,謝謝

sky不用太多 function a cal a,b,v a,b表示區間,v是精度 i 1 x a b 2 a i x t x x 3 x 1 3 x 2 1 迭代函式 while abs t x v i i 1 x t a a i x t x x 3 x 1 3 x 2 1 迭代函式 enda a...