Comment effectuer une régression de puissance dans R (étape par étape)
La régression de puissance est un type de régression non linéaire qui prend la forme suivante :
y = hache b
où:
- y : la variable de réponse
- x : la variable prédictive
- a, b : les coefficients de régression qui décrivent la relation entre x et y
Ce type de régression est utilisé pour modéliser des situations où la variable de réponse est égale à la variable prédictive élevée à une puissance.
L’exemple suivant, étape par étape, montre comment effectuer une régression de puissance pour un ensemble de données donné dans R.
Étape 1 : Créer les données
Tout d’abord, créons de fausses données pour deux variables : x et y.
#create data
x=1:20
y=c(1, 8, 5, 7, 6, 20, 15, 19, 23, 37, 33, 38, 49, 50, 56, 52, 70, 89, 97, 115)
Étape 2 : Visualisez les données
Créons ensuite un nuage de points pour visualiser la relation entre x et y :
#create scatterplot
plot(x, y)
Le graphique montre qu’il existe une relation de pouvoir claire entre les deux variables. Ainsi, il semble judicieux d’adapter une équation de régression de puissance aux données plutôt qu’un modèle de régression linéaire.
Étape 3 : Ajuster le modèle de régression de puissance
Ensuite, nous utiliserons la fonction lm() pour ajuster un modèle de régression aux données, en spécifiant que R doit utiliser le journal de la variable de réponse et le journal de la variable prédictive lors de l’ajustement du modèle :
#fit the model model <- lm(log(y)~ log(x)) #view the output of the model summary(model) Call: lm(formula = log(y) ~ log(x)) Residuals: Min 1Q Median 3Q Max -0.67014 -0.17190 -0.05341 0.16343 0.93186 Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 0.15333 0.20332 0.754 0.461 log(x) 1.43439 0.08996 15.945 4.62e-12 *** --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 Residual standard error: 0.3187 on 18 degrees of freedom Multiple R-squared: 0.9339, Adjusted R-squared: 0.9302 F-statistic: 254.2 on 1 and 18 DF, p-value: 4.619e-12
La valeur F globale du modèle est de 252,1 et la valeur p correspondante est extrêmement faible (4,619e-12), ce qui indique que le modèle dans son ensemble est utile.
En utilisant les coefficients du tableau de sortie, nous pouvons voir que l’équation de régression de puissance ajustée est :
ln(y) = 0,15333 + 1,43439ln(x)
En appliquant e aux deux côtés, nous pouvons réécrire l’équation comme suit :
- y = e 0,15333 + 1,43439ln(x)
- y = 1,1657x 1,43439
Nous pouvons utiliser cette équation pour prédire la variable de réponse, y , en fonction de la valeur de la variable prédictive, x .
Par exemple, si x = 12, alors nous prédirions que y serait 41,167 :
y = 1,1657(12) 1,43439 = 41,167
Bonus : n’hésitez pas à utiliser ce calculateur de régression de puissance en ligne pour calculer automatiquement l’équation de régression de puissance pour un prédicteur et une variable de réponse donnés.
Ressources additionnelles
Comment effectuer une régression linéaire multiple dans R
Comment effectuer une régression exponentielle dans R
Comment effectuer une régression logarithmique dans R