簡單線性迴歸是一種用於研究兩個連續變數之間關係的統計方法。其中,一個變數被稱為自變數(x),另一個變數稱為因變數(y)。我們假設這兩個變數之間存在線性關係,並試圖找到一個線性函數,以自變數的特徵來準確預測因變數的反應值(y)。透過擬合一條直線,我們可以得到預測的結果。這個預測模型可以用來理解和預測因變數如何隨著自變數的變化而變化。
為了理解這個概念,我們可以藉助一個薪水資料集,其中包含了每個自變數(經驗年限)對應的因變數(薪水)的值。
年薪與經驗
1.1 39343.00
1.3 46205.00
1.5 37731.00
2.0 43525.00
2.2 39891.00
2.9 56642.00
3.0 60150.00
3.2 54445.00
3.2 64445.0007#7#7#105#7#510512#7#7#7#7#5.0512#7#。
#出於一般目的,我們定義:x作為特徵向量,即x=[x_1,x_2,....,x_n],y作為回應向量,即y=[y_1,y_2,....,y_n]對於n次觀察(在上面的範例中,n=10)。 給定資料集的散佈圖 #現在,我們必須找到一條適合上述散佈圖的線,透過它我們可以預測任何y值或任何x值的反應。 最適合的線稱為迴歸線。 以下R程式碼用於實現簡單線性迴歸dataset=read.csv('salary.csv') install.packages('caTools') library(caTools) split=sample.split(dataset$Salary,SplitRatio=0.7) trainingset=subset(dataset,split==TRUE) testset=subset(dataset,split==FALSE) lm.r=lm(formula=Salary~YearsExperience, data=trainingset) coef(lm.r) ypred=predict(lm.r,newdata=testset) install.packages("ggplot2") library(ggplot2) ggplot()+geom_point(aes(x=trainingset$YearsExperience, y=trainingset$Salary),colour='red')+ geom_line(aes(x=trainingset$YearsExperience, y=predict(lm.r,newdata=trainingset)),colour='blue')+ ggtitle('Salary vs Experience(Training set)')+ xlab('Years of experience')+ ylab('Salary') ggplot()+ geom_point(aes(x=testset$YearsExperience,y=testset$Salary), colour='red')+ geom_line(aes(x=trainingset$YearsExperience, y=predict(lm.r,newdata=trainingset)), colour='blue')+ ggtitle('Salary vs Experience(Test set)')+ xlab('Years of experience')+ ylab('Salary')
以上是用R實作簡單線性迴歸法並解釋其概念的詳細內容。更多資訊請關注PHP中文網其他相關文章!