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

WBOY
Freigeben: 2024-01-22 23:09:11
nach vorne
1143 Leute haben es durchsucht

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')
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:163.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!