Les posteurs les plus actifs de la semaine
Aucun utilisateur |
Sujets les plus vus
Normalisation des variables de régression
3 participants
Page 1 sur 1
Normalisation des variables de régression
Bonjour tout le monde,
J'ai une variable y à expliquer par 2 variables x1et x2 , je voudrai appliquer la régression polynômial car le modèle n'est pas linéaire, donc j'applique la formule suivante :
lm (y~polym(x1,x2,degre=2) et j'obtiens le résulta suivant:
Call:
lm(formula = y~ poly(x1,x2, degree = 2))
Residuals:
Min 1Q Median 3Q Max
-18.8156 -3.4169 0.3278 3.2425 65.2434
Coefficients:
Estimate Std. Error t value
(Intercept) 56.2808 0.3954 142.340
poly(x1, x2, degree = 2)1.0 358.6984 6.6659 53.811
poly(x1, x2, degree = 2)2.0 -93.7138 7.6944 -12.179
poly(x1, x2, degree = 2)0.1 16.5000 6.6597 2.478
poly(x1, x2, degree = 2)1.1 -1021.8045 163.9687 -6.232
poly(x1, x2, degree = 2)0.2 -10.2271 7.6619 -1.335
Pr(>|t|)
(Intercept) < 2e-16 ***
poly(x1, x2, degree = 2)1.0 < 2e-16 ***
poly(x1, x2, degree = 2)2.0 < 2e-16 ***
poly(x1, x2, degree = 2)0.1 0.0137 *
poly(x1, x2, degree = 2)1.1 1.46e-09 ***
poly(x1, x2, degree = 2)0.2 0.1829
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 5.973 on 318 degrees of freedom
Multiple R-squared: 0.9202, Adjusted R-squared: 0.9189
F-statistic: 733.3 on 5 and 318 DF, p-value: < 2.2e-16
donc mon modèle s'écrit :
y=56.2808 + x1 * 358.6984 - x1^2* 93.7138 + x2 *16.5000- x1 * x2*1021.8045
Afin de connaître le poids de chacune des variables sur la variable à expliquer "Y" je souhaiterai normaliser les coefficient (or il faut que les variables soient entre 0 et 1) donc j'applique cette fonction:
standard <- function(x)
{ (x-min(x))/(max(x)-min(x))}
x1_s<-standard(x1)
x2_s<-standard(x2) # ici mes variables sont entre 0 et 1.
Mais quand je refait ma régression avec les nouvelles variables x1_s et x2_s j'obtiens les mêmes coefficients ( 56.2808, 358.6984,...).
Est-ce que la fonction "polym" normalise les variables par défaut ? j'ai cherché sur internet et je n'ai pas trouvé réponse à mes interrogations!!!
Merci encore pour votre réponse.
J'ai une variable y à expliquer par 2 variables x1et x2 , je voudrai appliquer la régression polynômial car le modèle n'est pas linéaire, donc j'applique la formule suivante :
lm (y~polym(x1,x2,degre=2) et j'obtiens le résulta suivant:
Call:
lm(formula = y~ poly(x1,x2, degree = 2))
Residuals:
Min 1Q Median 3Q Max
-18.8156 -3.4169 0.3278 3.2425 65.2434
Coefficients:
Estimate Std. Error t value
(Intercept) 56.2808 0.3954 142.340
poly(x1, x2, degree = 2)1.0 358.6984 6.6659 53.811
poly(x1, x2, degree = 2)2.0 -93.7138 7.6944 -12.179
poly(x1, x2, degree = 2)0.1 16.5000 6.6597 2.478
poly(x1, x2, degree = 2)1.1 -1021.8045 163.9687 -6.232
poly(x1, x2, degree = 2)0.2 -10.2271 7.6619 -1.335
Pr(>|t|)
(Intercept) < 2e-16 ***
poly(x1, x2, degree = 2)1.0 < 2e-16 ***
poly(x1, x2, degree = 2)2.0 < 2e-16 ***
poly(x1, x2, degree = 2)0.1 0.0137 *
poly(x1, x2, degree = 2)1.1 1.46e-09 ***
poly(x1, x2, degree = 2)0.2 0.1829
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 5.973 on 318 degrees of freedom
Multiple R-squared: 0.9202, Adjusted R-squared: 0.9189
F-statistic: 733.3 on 5 and 318 DF, p-value: < 2.2e-16
donc mon modèle s'écrit :
y=56.2808 + x1 * 358.6984 - x1^2* 93.7138 + x2 *16.5000- x1 * x2*1021.8045
Afin de connaître le poids de chacune des variables sur la variable à expliquer "Y" je souhaiterai normaliser les coefficient (or il faut que les variables soient entre 0 et 1) donc j'applique cette fonction:
standard <- function(x)
{ (x-min(x))/(max(x)-min(x))}
x1_s<-standard(x1)
x2_s<-standard(x2) # ici mes variables sont entre 0 et 1.
Mais quand je refait ma régression avec les nouvelles variables x1_s et x2_s j'obtiens les mêmes coefficients ( 56.2808, 358.6984,...).
Est-ce que la fonction "polym" normalise les variables par défaut ? j'ai cherché sur internet et je n'ai pas trouvé réponse à mes interrogations!!!
Merci encore pour votre réponse.
leaticia- Nombre de messages : 16
Date d'inscription : 17/05/2011
Re: Normalisation des variables de régression
tout est dans l'aide :
"For poly with a single vector argument:
A matrix with rows corresponding to points in x and columns corresponding to the degree, with attributes "degree" specifying the degrees of the columns and (unless raw = TRUE) "coefs" which contains the centering and normalization constants used in constructing the orthogonal polynomials. The matrix has given class c("poly", "matrix").
Other cases of poly and polym, and predict.poly: a matrix."
Mais attention par défaut poly utilise des polynômes orthogonaux ce qui veut dire que les coefficients de tes paramètres ne peuvent pas être directement retranscris tels que tu les as écrits. Pour t'en convaincre prédit 1 ou deux de tes valeurs à l'aide de ton modèle (fonction predict) et à la main en utilisant tes coefficients.
"For poly with a single vector argument:
A matrix with rows corresponding to points in x and columns corresponding to the degree, with attributes "degree" specifying the degrees of the columns and (unless raw = TRUE) "coefs" which contains the centering and normalization constants used in constructing the orthogonal polynomials. The matrix has given class c("poly", "matrix").
Other cases of poly and polym, and predict.poly: a matrix."
Mais attention par défaut poly utilise des polynômes orthogonaux ce qui veut dire que les coefficients de tes paramètres ne peuvent pas être directement retranscris tels que tu les as écrits. Pour t'en convaincre prédit 1 ou deux de tes valeurs à l'aide de ton modèle (fonction predict) et à la main en utilisant tes coefficients.
droopy- Nombre de messages : 1156
Date d'inscription : 04/09/2009
Re: Normalisation des variables de régression
Effectivement Il y a un grand écart entre les valeurs prédites et les valeurs mesurées pour ce modèle...!
Pour l'aide, ça me parait très flou, c'est dû à mon niveau d'Anglais!!!!!
Est ce que tu peux être un peu plus claire ?
Merci encore .
Leaticia
Pour l'aide, ça me parait très flou, c'est dû à mon niveau d'Anglais!!!!!
Est ce que tu peux être un peu plus claire ?
Merci encore .
Leaticia
leaticia- Nombre de messages : 16
Date d'inscription : 17/05/2011
Re: Normalisation des variables de régression
Salut,
Si tu veux avoir la réelle expression du modèle que tu obtiens il faut regarder les contrastes
Par exemple, ci dessous les 3 premiers contrastes polynomiaux pour un facteur à 5 niveaux.
Tu peux voir que chaque niveau se décompose en 3 composantes (Linéaire, quadratique et cubique).
Si tu veux avoir la réelle expression du modèle que tu obtiens il faut regarder les contrastes
Par exemple, ci dessous les 3 premiers contrastes polynomiaux pour un facteur à 5 niveaux.
- Code:
> contrasts(C(gl(5,3),contr.poly,3))
.L .Q .C
1 -6.325e-01 0.5345 -3.162e-01
2 -3.162e-01 -0.2673 6.325e-01
3 -3.288e-17 -0.5345 2.165e-16
4 3.162e-01 -0.2673 -6.325e-01
5 6.325e-01 0.5345 3.162e-01
Tu peux voir que chaque niveau se décompose en 3 composantes (Linéaire, quadratique et cubique).
attention droopy est plus viril que tu ne le pense...tu vas le vexer :DEst ce que tu peux être un peu plus claire ?
Nik- Nombre de messages : 1606
Date d'inscription : 23/05/2008
Re: Normalisation des variables de régression
Bonjour,
Merci pour vos réponses.
Donc en quelque sorte en colonnes j'ai mes coefficients pour les 3 ordres ???
à quoi correspond C(g1(5,3)) ? est -ce que c'est la matrice des variables explicatives à 5 lignes ??
comment je pourrai interpréter ce résultat , et connaître la pertinence de mes variables ainsi que les coefficients ?
Merci encore
PS: Oh je suis sincèrement navré, non je ne doute pas de sa virilité , c'est pr cette raison qu'il a renoncé à me répondre !!!!
Merci pour vos réponses.
Donc en quelque sorte en colonnes j'ai mes coefficients pour les 3 ordres ???
à quoi correspond C(g1(5,3)) ? est -ce que c'est la matrice des variables explicatives à 5 lignes ??
comment je pourrai interpréter ce résultat , et connaître la pertinence de mes variables ainsi que les coefficients ?
Merci encore
PS: Oh je suis sincèrement navré, non je ne doute pas de sa virilité , c'est pr cette raison qu'il a renoncé à me répondre !!!!
leaticia- Nombre de messages : 16
Date d'inscription : 17/05/2011
Sujets similaires
» Variables de régression
» Comparaisons variables régression
» régression logistique et variables ordinales
» Regression lineaire a plusieurs variables
» régression sur variables qualitatives et quantitatives
» Comparaisons variables régression
» régression logistique et variables ordinales
» Regression lineaire a plusieurs variables
» régression sur variables qualitatives et quantitatives
Page 1 sur 1
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum
|
|