Heim >Technologie-Peripheriegeräte >KI >Implementieren Sie eine einfache lineare Regressionsmethode in R und erläutern Sie deren Konzepte

Implementieren Sie eine einfache lineare Regressionsmethode in R und erläutern Sie deren Konzepte

WBOY
WBOYnach vorne
2024-01-22 23:09:111170Durchsuche

Einfache lineare Regression ist eine statistische Methode zur Untersuchung der Beziehung zwischen zwei kontinuierlichen Variablen. Unter diesen wird eine Variable als unabhängige Variable (x) und die andere Variable als abhängige Variable (y) bezeichnet. Wir gehen davon aus, dass zwischen diesen beiden Variablen eine lineare Beziehung besteht, und versuchen, eine lineare Funktion zu finden, die den Antwortwert (y) der abhängigen Variablen basierend auf den Eigenschaften der unabhängigen Variablen genau vorhersagt. Durch Anpassen einer geraden Linie können wir die vorhergesagten Ergebnisse erhalten. Dieses Vorhersagemodell kann verwendet werden, um zu verstehen und vorherzusagen, wie sich die abhängige Variable ändert, wenn sich die unabhängigen Variablen ändern.

Um dieses Konzept zu verstehen, können wir einen Gehaltsdatensatz verwenden, der den Wert der abhängigen Variablen (Gehalt) enthält, die jeder unabhängigen Variablen (Jahre Erfahrung) entspricht.

Gehaltsdatensatz

Jahresgehalt und Erfahrung

1,1 39343,00

1,3 46205,00

1,5 37731,00

2,0 43525,00

2.2.39 891,0 0

2,9 56642,00

3,0 60150,00

3,2 54445,00

3,2 64445,00

3,7 57189,00

Für allgemeine Zwecke definieren wir:

x als Merkmalsvektor, d. h. x=[x_1,x_2,....,x_n],

y als Antwortvektor, d. h. y=[y_1,y_2, .. ..,y_n]

für n Beobachtungen (im Beispiel oben, n=10).

Streudiagramm des gegebenen Datensatzes

简单线性回归概念 R代码实现简单线性回归

Jetzt müssen wir eine Linie finden, die zum obigen Streudiagramm passt, anhand derer wir die Reaktion für jeden y-Wert oder für jeden x-Wert vorhersagen können.

Die Linie der besten Anpassung wird Regressionslinie genannt.

Der folgende R-Code wird verwendet, um eine einfache lineare Regression zu implementieren

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')

Visualisierung der Trainingssatzergebnisse

简单线性回归概念 R代码实现简单线性回归

Das obige ist der detaillierte Inhalt vonImplementieren Sie eine einfache lineare Regressionsmethode in R und erläutern Sie deren Konzepte. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:163.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen