通過環境影響因子預測生物種群數量
預測任務是建立一個模型來找到一個數值變數和一組解釋變數的關係。預測模型既可以根據未來解釋變數的值來預測目標變數,也可以幫助更好地理解問題中各個變數之間的相互聯繫。
本篇內容基於研究特徵構建模型,而非基於嚴格的模型選擇步驟。
缺失值處理
R中的線性回歸不能使用有缺失值的數據集,而回歸樹模型可以很自然的處理這些帶有缺失值的數據。在回歸樹模型中,可以直接應用原始的數據樣本記錄。
在建立模型之前,使用不同的方法來進行數據預處理的工作。
對缺失值處理,請參看本公眾號數據處理專題內容。
多元線性回歸
多元線性回歸模型是最常見的統計方法。模型給出了一個有關目標變數與一組解釋變數關係的線性函數。這個線性函數是形如:
? * Xi的多項式的和,其中Xi是變數,?i是常數
由於多元線性回歸模型中沒有處理缺失值的方法,因此應用相似性對數據(參看數據處理專題方法案例)進行填補。
缺失值填補
給出模型函數形式
lm()函數結果是一個含有線性模型信息的方法。函數的形式是用數據中其他所有變數來預測變數a1。在實際的預測模型中,需要預測每種樣本中的n個結果,需要將模型分成n個不同的線性回歸。
R為因子變數season生成了3個虛擬變數
seasonspring、seasonsummer、seasonwinter
每一個有k個水平的因子變數,R會生成(k-1)個虛擬變數。這些虛擬變數的值為0或者1,當虛擬變數的值為1,表明該因子值出現,同時表明所有其他虛擬變數的值為0。如果所有(k-1)個虛擬變數的取值都為0,則表明因子變數的取值為第k個剩餘的值。
模型檢驗
1
t檢驗
對於每個多元線性回歸方程的係數,R顯示它的估計值和標準誤差。通常使用t檢驗來驗證這些假設。
當該值為0.0001,表明有99.99%的置信度認為這個係數並非為0.對於每個測試,R都給出一個標註來表示相應的測試置信度水平。
R提供一個拒絕原假設的置信度水平,通常如果一個模型不能通過這個檢驗,則單個係數的t檢驗沒有意義。
2
多元R^2
調整係數更為嚴格,它考慮回歸模型中參數的數量。R^2表明模型所能解釋的數據偏差的比例。R^2越接近1,模型擬合越好;R^2越小,模型擬合越差。
3
繪圖法
有些診斷信息也可以通過繪製線性模型來進行檢驗。使用plot( )函數繪製擬合的目標變數值和模型殘差的散點圖,當誤差相對較大時,R通查在該散點圖中添加該誤差相應的行數。
也可以使用正態Q-Q圖,來檢測誤差是否符合應有的正態分布。
4
F檢驗
F檢驗。檢查某些變數的顯著性,決定模型中是否存在無關因子,影響最終的建模。
精簡線性模型
對建立的模型進行方差分析結果表明:season對減少模型擬合誤差的貢獻度最小,將它從模型中剔除。
anova()提供一個模型擬合的方差序貫分析。隨著公式中項數的增加,模型的殘差平方和減少。
更新後的模型
新模型的擬合指標R^2提高到了36.8%,但是仍然有較大偏差。
模型對照
誤差平方和為(-448),但是兩者顯著值為0.674,說明兩個模型不同的可能性為30%,差距並不顯著。
通過F檢驗對兩個模型進行方差分析,據此評估兩個模型是否有顯著差異。
按照這個原理,不斷使用anova()函數檢查是否有能夠剔除的不相關影響因子。
對模型進行迭代分析
模型概要
使用summary()函數獲取模型的最終信息
小結
模型的選取是一個複雜的過程——既涉及到數據處理,也涉及到實際應用的模型選擇。在專業領域中,可選擇的模型有許多個,哪一個是真正貼合實際結果的模型,需要通過大量不同的模型對比最終決定。僅使用一種模型定論,將會產生不可預估的偏差。
TAG:R語言數據分析與實踐 |