利用matlab中的函數進行線性迴歸分析

本文系作者學習資料整理,如有不正確的地方,歡迎大家指正!

在matlab中regress()函數和polyfit()函數都可以進行迴歸分析。

(1)regress()函數主要用於線性迴歸,一元以及多元的。它可以提供更多的信息,殘差之類的。

(2)polyfit()函數是利用多項式擬合。可以是線性也可以是非線性的。

regress()函數詳解

[bbintr,rintstats]=regress(y,Xalpha)

說明:b是線性方程的係數估計值,並且第一值表示常數,第二個值表示迴歸係數。bint是係數估計值的置信度爲95%的置信區間,r表示殘差,rint表示各殘差的置信區間,stats是用於檢驗迴歸模型的統計量,有三個數值其中有表示迴歸的R2統計量和F以及顯著性概率P值,alpha爲置信度。

相關係數r^2越大,說明迴歸方程越顯著;與F對應的概率P<alpha時候拒絕H0,迴歸模型成立。

y表示一個n-1的矩陣,是因變量的值,X是n-p矩陣,自變量x和一列具有相同行數,值是1的矩陣的組合。 如:對含常數項的一元迴歸模型,可將X變爲n-2矩陣,其中第一列全爲1

ONES(SIZE(A)) is the same size as A and all ones。

利用它實現X=[ones(size(x))x]

(2)polyfit()函數詳解-------------摘自sina小雪兒博客

p=polyfit(x,y,n)

[p,s]= polyfit(x,y,n)

說明:x,y爲數據點,n爲多項式階數,返回p爲冪次從高到低的多項式係數向量px必須是單調的。矩陣s用於生成預測值的誤差估計。(見下一函數polyval)

多項式曲線求值函數:polyval( )

調用格式: y=polyval(p,x)

[y,DELTA]=polyval(p,x,s)

說明:y=polyval(p,x)爲返回對應自變量x在給定係數P的多項式的值。

[y,DELTA]=polyval(p,x,s) 使用polyfit函數的選項輸出s得出誤差估計Y DELTA。它假設polyfit函數數據輸入的誤差是獨立正態的,並且方差爲常數。則Y DELTA將至少包含50%的預測值。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章