多元線性回歸的適用條件:
(1)自變數對應變數的變化具有顯著影響
(2)自變數與應變數間的線性相關必須是真實的,而非形式上的
(3)自變數之間需有一定的互斥性
(4)應具有完整的統計資料
訓練資料:csv格式,含有19維特徵
步驟一:資料讀取及預處理
從vt.csv檔案中讀取訓練資料,從
rm(list = ls(all=true))
library(car)
library(corrplot, quietly=true)
library(sqldf)
## 資料讀取
folder
# 銷量分3類讀取
name
namepre
path
pathpre
# 訓練集
dataset
# **集
datasetpre
dataselect
datapre
## 訓練集準備
names
names
datatrain
datatarget
步驟二:檢查兩兩變數關係
從結果可以看到,自變數之間存在非常嚴重的共線性,不能直接作為回歸引數輸入
若自變數之間的線性關係超過自變數與因變數之間的線性關係,則回歸模型穩定性收到破壞
步驟三:主成分分析
通過主成分分析,發現使用僅用2個主成分即可解釋96.8%的累積誤差,因此選用 comp1和comp2進行建模
步驟四:多元回歸模型建立
## 主成分擬合多元線性回歸方程
步驟五:模型檢驗(1)擬合程度檢驗
r^2 為0.8905,自變數與應變數之間具有較強的線性關係
(2)估計標準誤差檢驗
rse值為59.48
(3)回歸方程顯著性檢驗(f檢驗)
f檢驗結果為1221,查f分布表,所有自變數與應變數的線性關係密切
(4)回歸係數顯著性檢驗(t檢驗)
可以看到comp1,comp2的p-value均小於0.05,表名這兩個自變數對模型影響顯著
(5)多重共線性檢驗
compsx
x step(lmp)
可以利用setp函式消除多重共線性影響
步驟六:殘差分析## 殘差分析
par(mfrow=c(2,2))
步驟七:模型**及結果輸出
comppre
coe
tpre
output
pathwrite
write.table(output, file =pathwrite,sep =",",col.names =t,row.names = f)
將**結果寫入tpre.csv檔案中
參考文獻
精通機器學習 基於R(二)
第二章 線性回歸 機器學習基礎技術 2.1單變數回歸 線性回歸必須通過假設檢驗,總結如下 1 線性 變數與響應變數之間的關係是線性的。如果不是線性的要進行資料轉換 對數轉換 多項式轉換 指數轉換等 2 誤差不相關 在時間序列和面板資料中,en betan 1是乙個常見的問題。3 同方差性 誤差是正態...
用R語言DIY機器學習演算法 KNN
knn演算法又稱為k最鄰近演算法 k nearest neighbour 是一種出現較早且原理比較簡單的機器學習演算法。其基本思想就是根據距離待分類資料a最近的k個樣本資料的分類來 a可能屬於的類別。基本的計算步驟如下 knn演算法的優點是原理簡單,易於實現,在多分類問題中能取得較好的結果 缺點是計...
機器學習與R語言 5 規則學習演算法
目錄2.規則學習應用示例 過程 對於每乙個特徵,基於相似的特徵值1r對資料分組,然後對於每個書分組,該演算法的 類為占多數的類。比如動物分類中若以行走途徑為規則錯誤率為2 15,若以是否有皮毛為規則錯誤率為3 15,因此1r演算法基於以行走途徑為規則返回結果。注意 如果分類水平分布很不均勻,規則學習...