上期我們分享了使用matlab進行數組最值的搜尋,有同學留言想了解matlab多元線性回歸,安排!
回歸分析是確定兩種或兩種以上變量間相互依賴的定量關係的一種統計分析方法,運用十分廣泛。
回歸分析按照涉及的變量的多少,分為一元回歸和多元回歸分析;在線性回歸中,按照因變量的多少,可分為簡單回歸分析和多重回歸分析;按照自變量和因變量之間的關係類型,可分為線性回歸分析和非線性回歸分析。
本文主要介紹用多元線性回歸的相關知識及Matlab實現方法。
其中βi為最小二乘法估計值。
對線性回歸的模型進行擬合的方法除了最常見的最小二乘法之外,還有穩定回歸與逐步回歸這兩種方式。
穩定回歸:fitlm函數中如果添加了RobustOpts參數對,那麼就可以進行穩定回歸了。穩定回歸方法可以省去人工檢測異常值的步驟,但是step函數不能適用於穩定回歸方法。
逐步回歸:使用逐步回歸函數stepwiselm可以從一個模型出發,嘗試增加或者減少一項,從而改進結果,直到無法改進為止。
Matlab統計工具箱用命令regress實現多元線性回歸,用的方法是最小二乘法,用法是:
b=regress(Y,X)
其中Y,X為按(22)式排列的數據,b為回歸係數估計值
[b,bint,r,rint,stats]=regress(Y,X,alpha)
這裡Y,X同上。
alpha為顯著性水平(預設時設定為0.05)
b,bint為回歸係數估計值和它們的置信區間
r,rint為殘差(向量)及其置信區間
stats是用於檢驗回歸模型的統計量
有四個數值,第一個是R^2;第二個是F;第三個是與F對應的概率p,p<α拒絕H0,回歸模型成立;第四個是殘差的方差s^2。
Matlab中的回歸分析合金的強度y與其中的碳含量x有比較密切的關係,今從生產中收集了一批數據如下表1:
試先擬合一個函數y(x),再用回歸分析對它進行檢驗。
解:
y=[42,41.5,45.0,45.5,45.0,47.5,49.0,55.0,50.0];可知y與x大致上為線性關係。
觀察命令rcoplot(r,rint)所畫的殘差分布:
可依據上圖發現除第8個數據外其餘殘差的置信區間均包含零點,第8個點應視為異常點,將其剔除後重新計算,可得:
b=30.7820 109.3985
bint=26.2805 35.2834
76.9014141.8955
stats=0.9188 67.8534 0.0002 0.8797
故而應該用修改後的這個結果。
最終擬合的結果如下所示:
參考內容:
司守奎《數學建模算法與程序》
董辰輝《MATLAB從入門到算法系列實踐課》
同學們還想學習哪些內容呢?歡迎在評論區留言~
系統學習matlab
↓↓↓
超值永久有效Matlab教程
40小時精心講解
長達一年社群抱團成長
原價599,現在拼團報名只需399!