matlab一次線性擬合函式polyfity1只能得到

2021-05-21 17:44:59 字數 4508 閱讀 7520

1樓:匿名使用者

用polyfit(x,y,1)得到的擬合函式只能得到a,b,但不能得到線性

相關係數

版r^2。如想要得到其權線性相關係數,可以用regress(y,x),其使用格式

[b,bint,r,rint,stats] = regress(y,x);

b——擬合係數

bint——b的置信區間

r——殘差值

rint——r的置信區間

stats——檢驗統計量,第一個就是相關係數

例如:x=[。。。];y=[。。。]

x=[x ones(n,1)]; %x的行數(列數)

[b,bint,r,rint,stats] = regress(y,x);

matlab polyfit 相關係數

2樓:

a=polyfit(x,y,1);

z=polyval(a,x);

r=corrcoef(x,y);

所示為線性擬合

這樣得到的r即為相關係數矩陣,其中

r(1,2)=r(2,1)為相關係數,其值在[-1,1]之間,1表示最大的正相關,-1表示絕對值最大的負相關。

最近開始看這方面的,希望能幫到你。

3樓:

用cftool

>>cftool

回車,出現一個對話方塊。data輸入相應的x,y,然後create data set;fitting,選擇提供的各種模型,逐個試試,總能找到殘差最小的,相關係數最大的一種模型。

給個例子。

clc;clear

x=-1:0.1:1

for k=1:length(x)

y(k)=x(k)^2+0.1*rand

end[p,s]=polyfit(x,y,2)s.rplot(x,y,'o',x,polyval(p,x))結果:p =

1.0072 0.0091 0.0439s =

r: [3x3 double]

df: 18

normr: 0.1153

ans =

-2.2509 -0.0000 -3.42080 2.7749 0.00000 0 -3.0492s是個結構陣列。

s contains fields for the triangular factor (r) from a qr de***position of the vandermonde matrix of x, the degrees of freedom (df), and the norm of the residuals (normr).

4樓:芷蘭之德

好複雜啊!我沒法幫你

matlab polyfit 相關係數是什麼?

5樓:巴黎鐵搭下等你

a=polyfit(x,y,1);

z=polyval(a,x);

r=corrcoef(x,y);

所示為線性擬合

這樣得到的r即為相關係數矩陣,其中

r(1,2)=r(2,1)為相關係數,其值在[-1,1]之間,1表示最大的正相關,-1表示絕對值最大的負相關。

polyfit疑問:

n=[1,2,4,8];

t=[7.17,6.77,6.13,5.73];

t1=[7.21,6.88,6.32,5.84];

p=polyfit(log(n),log(t),1);

p1=polyfit(log(n),log(t1),1);

a=exp(p(2))

b=p(1)

a1=exp(p1(2))

b1=p1(1)

t1=a*n.^b;

plot(n,t,'+',n,t1,'-')解法:p = polyfit(x,y,n) 返回階數為 n 的多項式 p(x) 的係數,該階數是 y 中資料的最佳擬合(在最小二乘方式中)。p 中的係數按降冪排列,p 的長度為 n+1。

這是help polyfit的部分解釋。

所以,在你這裡,p裡面裝有兩個數,一個是常係數p(2),一個是自變數的係數 p(1).exp(p(1))是e的p(1)次方。之所以這個**裡有exp出現,是因為多項式擬合的時候,把原資料轉換為對數形式了。

matlab對一組資料進行資料線性擬合,如何獲取線性擬合後的r^2值?

6樓:

如果用regress進行擬合的話,輸出加上state,分別給出r方,f值和顯著性。。

如果用的是其他擬合,r=corrcoef(t,y),y是原始資料,t是用你擬合後求得方程,用這個方程得到的資料

matlab求相關係數

7樓:湯採姒惜雪

clear;clc

x=[50:50:2050];

y=[159.02

176.14

192.59

208.50

223.93

238.97

253.66

268.04

282.16

296.03

309.69

323.15

336.44

349.57

362.56

375.42

388.16

400.79

413.32

425.76

438.12

450.40

462.62

474.78

486.89

498.9

510.97

522.95

534.90

546.82

558.72

570.61

582.48

594.35

606.22

618.09

629.96

641.85

653.75

665.67

677.63];

a=polyfit(x,y,3);

y=vpa(poly2sym(a,'x'),5)%擬合覆函制數

plot(x,y,'*',x,polyval(a,x))vpa(corrcoef(y,polyval(a,x)))%相關係數

8樓:匿名使用者

使用最小二乘法求係數a,b,c 即使用polyfit函式

p = polyfit(x,y,n) ,n=2。 得到的結果p是個向量,分別存放a,b,c

求相關係數用corrcoef(y1,y2)

9樓:匿名使用者

相關係數就用命令corrcoef

min(min(corrcoef(x1, x2))) 就是x1,x2之間的相關係數。

在matlab中使用polyfit(x,y,2)命令對一組資料x和y進行2階多項式擬合,會得到三個

10樓:匿名使用者

用nlinfit函式實現非線性的bai最du小二乘擬合將x,zhiy的關係擬合dao為y=a*x.^2可以用polyfit首先擬合得到多專項式

將p(1)也就是二次項屬係數作為擬合的初值,那樣更快收斂p=polyfit(x,y,2);

a = nlinfit(x,y,@(a,x) a*x.^2,p(1));

matlab 指數曲線擬合:y=a*exp((t-b)^2/c)

11樓:匿名使用者

定義擬合函

來數:function s=hansh(x,r)a=x(1);

b=x(2);

c=x(3);

s=a*exp((r-b)^2/c);

主函自數:

t=[219 222 223 226 229 233];

y=[352 2353 3513 6303 3521 3300]; %你的資料少個y

x0=[1 1 1]; %對a,b,c賦初值

[x,resnorm]=lsqcurvefit(@hansh,x0,t,y) %最小二乘曲線擬合

12樓:流浪的醉人

clear

t=[219 222 223 226 229];%你給的資料有問題,請自行調整

y0=[352 2353 3513 6303 3521];

y1=ones(size(y0),1);

y1=log(y0);%對原方程兩邊取對數p=polyfit(t,y1,2);%p為擬合多項式的係數,降冪排列c=1/p(1);%把取回對數後的式子整理答一下,就可以得到abc跟p的對應關係

b=-p(2)*c/2;

a=exp(p(3)-b^2/c);abc

13樓:匿名使用者

同意二樓做法,應該使用最佳平方逼近,但你的資料好像有問題啊

一次函式與反比例函式交點問題,一次函式與反比例函式在什麼情況下有交點

首先解釋copy 一下 有2個交點 b2 4ac大於0 這裡應該是把兩個一次函式和反比例函式的解析式聯立起來了,從而得到一個形如ax 2 bx c 0的一元二次方程。一元二次方程根的情況 b 4ac大於0時 則有兩個實根。b 4ac 0時方程只有一個實根。b 4ac小於0時方程沒有實根。根據圖象即方...

一次函式總結

一次函式的影象 性質總結 閱讀 理解 一 一次函式的影象name1.正比例函式y kx k 0,k是常數 的影象是經過o 0,0 和m 1,k 兩點的一條直線 如圖13 17 1 當k 0時,影象經過原點和第 一 三像限 2 k 0時,影象經過原點和第二 四像限.2.一次函式y kx b k是常數,...

一次函式問題

1 設l1 y kx b 3 2k b k 2 3 k b b 1 l1 y 2x 1 所以 c 2,5 設 l2 y kx 1 點c代入 l2 y 3x 1 2 l1與x軸交於 1 2,0 l2 與x軸交於 1 3,0 s 1 2 1 2 1 3 5 25 12 3 2x 1 3x 1 x 2 解...