Matlab實(shí)現(xiàn)多元回歸實(shí)例_第1頁
Matlab實(shí)現(xiàn)多元回歸實(shí)例_第2頁
Matlab實(shí)現(xiàn)多元回歸實(shí)例_第3頁
Matlab實(shí)現(xiàn)多元回歸實(shí)例_第4頁
Matlab實(shí)現(xiàn)多元回歸實(shí)例_第5頁
已閱讀5頁,還剩5頁未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、Matlab實(shí)現(xiàn)多元回歸實(shí)例(一)一般多元回歸一般在生產(chǎn)實(shí)踐和科學(xué)研究中,人們得到了參數(shù)和因變量的數(shù)據(jù),需要求出關(guān)系式,這時(shí)就可以用到回歸分析的方法。如果只考慮是線性函數(shù)的情形,當(dāng)自變量只有一個時(shí),即,中時(shí),稱為一元線性回歸,當(dāng)自變量有多個時(shí),即,中時(shí),稱為多元線性回歸。進(jìn)行線性回歸時(shí),有4個基本假定: 因變量與自變量之間存在線性關(guān)系; 殘差是獨(dú)立的; 殘差滿足方差奇性; 殘差滿足正態(tài)分布。在Matlab軟件包中有一個做一般多元回歸分析的命令regeress,調(diào)用格式如下:b, bint, r, rint, stats = regress(y,X,alpha) 或者b, bint, r, ri

2、nt, stats = regress(y,X) 此時(shí),默認(rèn)alpha 0.05.這里,y是一個的列向量,X是一個的矩陣,其中第一列是全1向量(這一點(diǎn)對于回歸來說很重要,這一個全1列向量對應(yīng)回歸方程的常數(shù)項(xiàng)),一般情況下,需要人工造一個全1列向量?;貧w方程具有如下形式:其中,是殘差。在返回項(xiàng)b,bint,r,rint,stats中,是回歸方程的系數(shù);是一個矩陣,它的第行表示的(1-alpha)置信區(qū)間;是的殘差列向量;是矩陣,它的第行表示第個殘差的(1-alpha)置信區(qū)間;注釋:殘差與殘差區(qū)間杠桿圖,最好在0點(diǎn)線附近比較均勻的分布,而不呈現(xiàn)一定的規(guī)律性,如果是這樣,就說明回歸分析做得比較理想

3、。 一般的,返回4個值:值、F_檢驗(yàn)值、閾值,與顯著性概率相關(guān)的值(如果這個值不存在,則,只輸出前3項(xiàng))。注釋:(1)一般說來,值越大越好。(2)人們一般用以下統(tǒng)計(jì)量對回歸方程做顯著性檢驗(yàn):F_檢驗(yàn)、t_檢驗(yàn)、以及相關(guān)系數(shù)檢驗(yàn)法。Matlab軟件包輸出F_檢驗(yàn)值和閾值。一般說來,F(xiàn)_檢驗(yàn)值越大越好,特別的,應(yīng)該有F_檢驗(yàn)值。(3)與顯著性概率相關(guān)的值應(yīng)該滿足。如果,則說明回歸方程中有多余的自變量,可以將這些多余的自變量從回歸方程中剔除(見下面逐步回歸的內(nèi)容)。這幾個技術(shù)指標(biāo)說明擬合程度的好壞。這幾個指標(biāo)都好,就說明回歸方程是有意義的。例1(Hamilton,1987)數(shù)據(jù)如下:序號YX1X21

4、12.372.239.66212.662.578.94312.003.874.40411.933.106.64511.063.394.91613.032.838.52713.133.028.04811.442.149.05912.863.047.711010.843.265.111111.203.395.051211.562.358.511310.832.766.591412.633.904.901512.463.166.96第一步 分析數(shù)據(jù)在Matlab軟件包中分析是否具有線性關(guān)系,并作圖觀察,M文件opt_hanmilton_1987:x1=2.23,2.57,3.87,3.10,3.39

5、,2.83,3.02,2.14,3.04,3.26,3.39,2.35,2.76,3.90,3.16;x2=9.66,8.94,4.40,6.64,4.91,8.52,8.04,9.05,7.71,5.11,5.05,8.51,6.59,4.90,6.96;y=12.37,12.66,12.00,11.93,11.06,13.03,13.13,11.44,12.86,10.84,11.20,11.56,10.83,12.63,12.46;corrcoef(x1,y);corrcoef(x2,y);plot3(x1,x2,y,*);得到結(jié)果:ans = 1.0000 0.0025 0.0025

6、1.0000ans = 1.0000 0.4341 0.4341 1.0000即,corrcoef(x1,y)0.0025,corrcoef(x2,y)0.4341,說明沒有非常明顯的單變量線性關(guān)系。圖形如下:也看不出有線性關(guān)系,但是,旋轉(zhuǎn)圖形,可以看出所有點(diǎn)幾乎在一個平面上。這說明,在一個平面上,滿足線性關(guān)系:或者,換成一個常見的形式 其中,是殘差。于是,在Matlab軟件包中做線性多元回歸,寫一個M文件opt_regress_hamilton:x1=2.23,2.57,3.87,3.10,3.39,2.83,3.02,2.14,3.04,3.26,3.39,2.35,2.76,3.90,3

7、.16;x2=9.66,8.94,4.40,6.64,4.91,8.52,8.04,9.05,7.71,5.11,5.05,8.51,6.59,4.90,6.96;y=12.37,12.66,12.00,11.93,11.06,13.03,13.13,11.44,12.86,10.84,11.20,11.56,10.83,12.63,12.46;e=ones(15,1);x=e,x1,x2;b,bint,r,rint,stats=regress(y,x,0.05)rcoplot(r,rint)其中,rcoplot(Residual case order plot)表示畫出殘差與殘差區(qū)間的杠桿圖

8、。執(zhí)行后得到:b = -4.5154 3.0970 1.0319bint = -4.6486 -4.3822 3.0703 3.1238 1.0238 1.0399r = 0.0113 -0.0087 -0.0102 -0.0069 0.0101 -0.0106 -0.0037 -0.0105 0.0049 -0.0136 0.0057 0.0163 -0.0023 0.0110 0.0071rint = -0.0087 0.0314 -0.0303 0.0128 -0.0301 0.0098 -0.0299 0.0162 -0.0106 0.0308 -0.0313 0.0102 -0.02

9、52 0.0178 -0.0299 0.0089 -0.0174 0.0272 -0.0331 0.0058 -0.0161 0.0275 -0.0027 0.0354 -0.0236 0.0190 -0.0079 0.0299 -0.0156 0.0298stats = 1.0e+004 * 0.0001 3.9222 0 0.0000即,。置信度95,且,與顯著性概率相關(guān)的,這說明,回歸方程中的每個自變量的選取,都是有意義的。殘差杠桿圖:從杠桿圖看出,所有的殘差都在0點(diǎn)附近均勻分布,區(qū)間幾乎都位于之間,即,沒有發(fā)現(xiàn)高杠桿點(diǎn),也就是說,數(shù)據(jù)中沒有強(qiáng)影響點(diǎn)、異常觀測點(diǎn)。 綜合起來看,以上回歸結(jié)

10、果(回歸函數(shù)、擬合曲線或曲面)近乎完美。(二)逐步回歸假設(shè)已有數(shù)據(jù)X 和Y,在Matlab軟件包中,使用stepwise命令進(jìn)行逐步回歸,得到回歸方程,其中是隨機(jī)誤差。stepwise命令的使用格式如下:stepwise(X,Y)注意:應(yīng)用stepwise命令做逐步回歸,數(shù)據(jù)矩陣X的第一列不需要人工加一個全1向量,程序會自動求出回歸方程的常數(shù)項(xiàng)(intercept)。在應(yīng)用stepwise命令進(jìn)行運(yùn)算時(shí),程序不斷提醒將某個變量加入(Move in)回歸方程,或者提醒將某個變量從回歸方程中剔除(Move out)。注釋:使用stepwise命令進(jìn)行逐步回歸,既有剔除變量的運(yùn)算,也有引入變量的運(yùn)算

11、,它是目前應(yīng)用較為廣泛的一種多元回歸方法。在運(yùn)行stepwise(X,Y)命令時(shí),默認(rèn)顯著性概率。 例2(Hald,1960)Hald數(shù)據(jù)是關(guān)于水泥生產(chǎn)的數(shù)據(jù)。某種水泥在凝固時(shí)放出的熱量(單位:卡克)與水泥中4種化學(xué)成分所占的百分比有關(guān):在生產(chǎn)中測得13組數(shù)據(jù):序號X1X2X3X4Y172666078.52129155274.331156820104.34113184787.6575263395.961155922109.27371176102.78131224472.59254182293.1102147426115.911140233483.8121166912113.3131068812

12、109.4求出關(guān)系式。解:(1)本問題涉及的數(shù)據(jù)是5維的,不能畫圖觀察。先做異常值分析。X=7,26,6,60;1,29,15,52;11,56,8,20;11,31,8,47;7,52,6,33;11,55,9,22;3,71,17,6;1,31,22,44;2,54,18,22;21,47,4,26;1,40,23,34;11,66,9,12;10,68,8,12;Y=78.5,74.3,104.3,87.6,95.9,109.2,102.7,72.5,93.1,115.9,83.8,113.3,109.4;A=X,Y;mahal(A,A)程序執(zhí)行后得到結(jié)果:ans = 5.6803 3.

13、6484 6.7002 3.3676 3.3839 4.4300 4.0080 6.5067 3.0849 7.5016 5.1768 2.4701可以認(rèn)為數(shù)據(jù)都是正常的。(2)一般多元回歸。在Matlab軟件包中寫一個M文件opt_cement_1:X=7,26,6,60;1,29,15,52;11,56,8,20;11,31,8,47; 7,52,6,33;11,55,9,22;3,71,17,6;1,31,22,44; 2,54,18,22;21,47,4,26;1,40,23,34;11,66,9,12; 10,68,8,12;Y=78.5,74.3,104.3,87.6,95.9,1

14、09.2,102.7,72.5, 93.1,115.9,83.8,113.3,109.4;a1=ones(13,1);A=a1,X;b,bint,r,rint,stat=regress(Y,A)rcoplot(r,rint)程序執(zhí)行后得到:b = 62.4054 1.5511 0.5102 0.1019 -0.1441bint = -99.1786 223.9893 -0.1663 3.2685 -1.1589 2.1792 -1.6385 1.8423 -1.7791 1.4910r = 0.0048 1.5112 -1.6709 -1.7271 0.2508 3.9254 -1.4487

15、-3.1750 1.3783 0.2815 1.9910 0.9730 -2.2943rint = -4.0390 4.0485 -3.2331 6.2555 -5.3126 1.9707 -6.5603 3.1061 -4.5773 5.0788 -0.5623 8.4132 -6.0767 3.1794 -6.8963 0.5463 -3.5426 6.2993 -3.0098 3.5729 -2.2372 6.2191 -4.1338 6.0797 -6.9115 2.3228stat = 0.9824 111.4792 0.0000 5.9830以及殘差杠桿圖:于是,我們得到:并且,殘

16、差杠桿圖顯示,殘差均勻分布在0點(diǎn)線附近,在stat返回的4個值中,0.9824,說明模型擬合的很好。F_檢驗(yàn)值111.47920.000,符合要求。但是,與顯著性概率相關(guān)的值5.98300.05,這說明,回歸方程中有些變量可以剔除。(3)逐步回歸在Matlab軟件包中寫一個M文件opt_cement_2:X=7,26,6,60;1,29,15,52;11,56,8,20;11,31,8,47; 7,52,6,33;11,55,9,22;3,71,17,6;1,31,22,44; 2,54,18,22;21,47,4,26;1,40,23,34;11,66,9,12; 10,68,8,12;Y=

17、78.5,74.3,104.3,87.6,95.9,109.2,102.7,72.5, 93.1,115.9,83.8,113.3,109.4;stepwise(X,Y)程序執(zhí)行后得到下列逐步回歸的畫面: Move x4 in程序提示:將變量x4加進(jìn)回歸方程(Move x4 in),點(diǎn)擊Next Step按鈕,即,進(jìn)行下一步運(yùn)算,將第4列數(shù)據(jù)對應(yīng)的變量加入回歸方程。點(diǎn)擊Next Step按健后,又得到提示:將變量x1加進(jìn)回歸方程(Move x1 in),點(diǎn)擊 Next Step按鈕,即,進(jìn)行下一步運(yùn)算,將第1列數(shù)據(jù)對應(yīng)的變量加入回歸方程。點(diǎn)擊Next Step按健后,又得到提示:Move No

18、 terms,即,沒有需要加入(也沒有需要剔除)的變量了。 注意:在Matlab7.0軟件包中,可以直接點(diǎn)擊“All Steps”按鈕,直接求出結(jié)果(省略中間過程)。intercept 最后得到回歸方程(藍(lán)色行是被保留的有效行,紅色行表示被剔除的變量):回歸方程中錄用了原始變量和。模型評估參數(shù)分別為:,修正的值,F(xiàn)_檢驗(yàn)值176.627,與顯著性概率相關(guān)的值,殘差均方RMSE2.73427(這個值越小越好)。以上指標(biāo)值都很好,說明回歸效果比較理想。 另外,截距intercept=103.097(Intercept = the estimated value of the constant term),這就是回歸方程的常數(shù)項(xiàng)。我們將的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論