Maison > Périphériques technologiques > IA > le corps du texte

Implémenter une méthode de régression linéaire simple dans R et expliquer ses concepts

WBOY
Libérer: 2024-01-22 23:09:11
avant
1144 Les gens l'ont consulté

La régression linéaire simple est une méthode statistique utilisée pour étudier la relation entre deux variables continues. Parmi elles, une variable est appelée variable indépendante (x) et l’autre variable est appelée variable dépendante (y). Nous supposons qu'il existe une relation linéaire entre ces deux variables et essayons de trouver une fonction linéaire qui prédit avec précision la valeur de réponse (y) de la variable dépendante en fonction des caractéristiques de la variable indépendante. En traçant une ligne droite, nous pouvons obtenir les résultats prédits. Ce modèle prédictif peut être utilisé pour comprendre et prédire comment la variable dépendante change à mesure que les variables indépendantes changent.

Afin de comprendre ce concept, nous pouvons utiliser un ensemble de données salariales, qui contient la valeur de la variable dépendante (salaire) correspondant à chaque variable indépendante (années d'expérience).

Ensemble de données salariales

Salaire annuel et expérience

1.1 39343.00

1.3 46205.00

1.5 37731.00

2.0 43525.00

2.2 91.0 0

2.9 56642.00

3.0 60150.00

3.2 54445.00

3.2 64445.00

3.7 57189.00

À des fins générales, nous définissons :

x comme vecteur de caractéristiques, soit x=[x_1,x_2,....,x_n],

y comme vecteur de réponse, soit y=[y_1,y_2, .. ..,y_n]

pour n observations (dans l'exemple ci-dessus, n=10).

Nuage de points de l'ensemble de données donné

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

Maintenant, nous devons trouver une ligne qui correspond au nuage de points ci-dessus à travers laquelle nous pouvons prédire la réponse pour n'importe quelle valeur y ou pour n'importe quelle valeur x.

La droite de meilleur ajustement est appelée droite de régression.

Le code R suivant est utilisé pour implémenter une régression linéaire simple

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')
Copier après la connexion

Visualisez les résultats de l'ensemble d'entraînement

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

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:163.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!