Forum de Statistiques
Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Les posteurs les plus actifs de la semaine


Interpréter une régression linéaire multiple

Aller en bas

Interpréter une régression linéaire multiple Empty Interpréter une régression linéaire multiple

Message par preliator le Dim 26 Avr 2020 - 8:17

Bonjour à tous,

Je réalise une étude très intéressante sur R à partir d'une base de données imaginaire, fruit d'un entretien réalisé sur 1500 personnes dans un hôpital, et qui a pour but de donner des informations sur leur santé mentale.
Je souhaite analyser les réseaux de relation qui existe entre une variable quantitative à expliquer, et plusieurs variables explicatives binaires, quantitatives, et une variables explicative catégorielle. Ainsi, j'analyse la durée d'entretien (variable à expliquer) avec l'âge des personnes, l'existence d'une dépression ou non, l'existence d'une consommation de drogue ou non, la présence d'un trouble schizophrénique ou non, ou la profession exercée. L'objectif est de voir dans quels cas la durée de l'entretien diminue ou augmente, sur ces paramètres.

Pour cela, j'utilise la régression linéaire multiple. J'ai des difficultés pour l'interpréter.

Voici la formule que j'écris :
Code:

> mod = lm(data$dur.interv~data$age + data$dep.cons + data$subst.cons + data$scz.cons + data$prof)
> summary(mod)

Et j'obtiens ce résultat :
Code:

Call:
lm(formula = data$dur.interv ~ data$age + data$dep.cons + data$subst.cons +
    data$scz.cons + data$prof)

Residuals:
    Min      1Q  Median      3Q     Max
-63.280 -14.164  -1.337  10.959  63.184

Coefficients:
                            Estimate Std. Error t value Pr(>|t|)    
(Intercept)                 48.77932    2.83938  17.180  < 2e-16 ***
data$age                     0.21289    0.05884   3.618 0.000317 ***
data$depression              7.36792    1.45840   5.052 5.53e-07 ***
data$conso_drogue            5.34589    1.76902   3.022 0.002599 **
data$scz                     2.50439    2.54734   0.983 0.325863    
data$profagriculteur        14.01270    9.72111   1.441 0.149880    
data$profartisan             2.52755    2.48989   1.015 0.310381    
data$profautre               3.72522    3.99637   0.932 0.351567    
data$profcadre              -5.28366    4.25567  -1.242 0.214798    
data$profemploye             0.45460    2.12659   0.214 0.830785    
data$profprof.interm?diaire  0.99344    2.95809   0.336 0.737089    
data$profsans emploi        -0.26596    1.87727  -0.142 0.887375    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 19.11 on 731 degrees of freedom
  (56 observations deleted due to missingness)
Multiple R-squared:  0.06595, Adjusted R-squared:  0.05189
F-statistic: 4.692 on 11 and 731 DF,  p-value: 5.825e-07

D'une manière générale, j'ai compris certains éléments :
- Une personne déprimée, par rapport à une personne non-déprimée et en annulant l’effet de l’âge, subst, et scz, aura en moyenne une durée d’entretien de 7 minutes de plus.
- Une personne déprimée et qui a une consommation de drogue aura une durée d’entretien de 7 + 5 = 12 minutes supplémentaire en moyenne par rapport à une personne qui n’est ni déprimé et qui ne consomme pas de drogue.

Là où je bloque, c'est sur l'interprétation de la variable catégorielle "Profession". 
- Si je veux savoir de combien augmente ou diminue en moyenne la durée de l'entretien chez un Cadre qui consomme des drogues, dois-je calculer -5.28 + 5.34, soit une augmentation moyenne du temps de l'entretien de 0.06 minutes ? (Bien que ça ne soit pas significatif, vu la valeur de p).
- Si je veux comparer de combien augmente ou diminue la durée de l'entretien chez un employé qui consomme des drogues avec un agriculteur qui consomme des drogues, dois-je faire (0.45 + 5.34 = 5.79 minutes en plus) pour l'employé et (14.01 + 5.34 = 19.35 minutes en plus) pour l'agriculteur, ce qui donnerait qu'un agriculteur drogué aura un temps d'entretien de 13.56 minutes en plus (19.35 - 5.79) qu'un employé drogué ? 

Merci

preliator

Nombre de messages : 39
Date d'inscription : 01/04/2019

Revenir en haut Aller en bas

Interpréter une régression linéaire multiple Empty Re: Interpréter une régression linéaire multiple

Message par Eric Wajnberg le Dim 26 Avr 2020 - 9:59

Plusieurs points importants, je pense :

Dans la mesure où vous avez des variables explicatives qualitatives (que l'on appelle des facteurs) vous êtes plutôt dans le cadre de ce que l'on appelle une ANOVA (analyse de la variance) ou ANCOVA (analyse de la covariance), qui sont des méthodes qui s'apparentent effectivement à la régression multiple. Je dis ceci surtout pour vous conseiller d'utiliser la fonction glm() plutôt que lm(), qui est plus générale et qui offre d'autres outils d'interprétation interessants.

Une variable binaire et quantitative, ça n'existe pas. Elle est qualitative. Et la prendre comme qualitative vous aidera même à interpréter les résultats correspondants, notamment en considérant ce que j'explique juste en dessous.

Si vous ajouté une variable qualitative à m modalités (un facteur), le modèle ne peut pas estimer m paramètres de régression. On dit que le modèle est surdimensioné. Seulement m-1 paramètres sont estimés. Ceci est vrai également s'il n'y a que deux modalités (variable binaire) où un seul paramètre est estimé. En fait, dans ce cas et pour résoudre le problème, une modalité est prise comme référence, et - par défaut dans R - c'est la première modalité lorsqu'on les classe par ordre alphabétique. Dans le cas de vos variables binaires, que j'imagine vous codez en "0" et "1", c'est donc le "0" qui tient lieu de référence, et le paramètre de régression indiqué dans le summary() que vous obtenez est pour le "1" par rapport au "0", donc. Ce qui - je pense - correspond à votre interprétation. Pour une variable à plus de deux modalités (le cas de "profession exercée"), il y a également une modalité qui tient lieu de référence (qui n'est donc pas indiqué dans les sorties de summary()), et les coefficients de régression que vous obtenez doivent être interprétés ici aussi comme par rapport à cette modalité de référence (qui est la première par ordre alphabétique). Je pense que ceci répond à votre question.

Attention que - apparemment - aucun des effets associés à "profession excercée" n'est  significatif. Aucune interprétation des coefficients de régression (comme vous le faites) n'a de sens. A cet égard, vous pourriez enfin être intéressé/e de tester globalement l'effet d'une variable qualitative. Vous pouvez faire ceci avec la fonction anova(). Soit anova(mod), si vous utilisez lm(), soit anova(mod, test="F"), si vous utilisez glm(), qui testera d'un coup toutes les variables explicatives de votre modèle.

Enfin (et j'aurais du commencer par ça), tout ceci n'est valide que si votre variable "dur.interv" suit des lois normales pour toutes les modalités de toutes vos variables explicatives, ce qui n'est généralement pas le cas pour des variables de durée, mais on rentre alors dans une toute autre discussion..

J'espère que ces différentes explications vous seront utiles.

Cordialement,

Eric.
Eric Wajnberg
Eric Wajnberg

Nombre de messages : 1185
Date d'inscription : 14/09/2012

Revenir en haut Aller en bas

Interpréter une régression linéaire multiple Empty Re: Interpréter une régression linéaire multiple

Message par preliator le Dim 26 Avr 2020 - 10:26

Un grand merci pour cette explication que je trouve très claire. Je suis également content, car ma formation en statistique me permet de comprendre les points que vous avez écris.
Je ne connaissais pas la fonction glm(), je l'étudierai avec attention dans le cadre de cet exemple y compris le test Anova pour tester globalement mes classes.

Pour ma variable à plus de deux modalités "Profession", j'avais effectivement entendu parlé d'une modalité qui tient lieu de référence. 

Alors, si je me permet de reprendre mon exemple, en tenant compte que la modalité de référence est la profession "Ouvrier" et qu'aucun des résultats n'est significatif, un agriculteur drogué met (14 + 5) --> 19 minutes d'entretien en plus qu'un ouvrier non-drogué ?

Merci beaucoup.

preliator

Nombre de messages : 39
Date d'inscription : 01/04/2019

Revenir en haut Aller en bas

Interpréter une régression linéaire multiple Empty Re: Interpréter une régression linéaire multiple

Message par Eric Wajnberg le Dim 26 Avr 2020 - 13:23

preliator a écrit:Pour ma variable à plus de deux modalités "Profession", j'avais effectivement entendu parlé d'une modalité qui tient lieu de référence.
Vous n'avez pas lu ma réponse précisément. L'utilisation d'une modalité qui tient lieu de référence est aussi le cas s'il n'y que deux modalités.

preliator a écrit:Alors, si je me permet de reprendre mon exemple, en tenant compte que la modalité de référence est la profession "Ouvrier" et qu'aucun des résultats n'est significatif, un agriculteur drogué met (14 + 5) --> 19 minutes d'entretien en plus qu'un ouvrier non-drogué ?
Plusieurs réponses :

S'il n'y a pas d'effet de la variable "profession excercée", c'est donc que toutes les conclusions que vous tirerez de l'effet drogué ou non et dépressif ou non, sera valide pour toutes les professions, et pas que pour les agriculteurs, ouvriers, etc. D'ailleurs, si vraiment il n'y a pas d'effet de la variable "profession excercée", il faudrait en toute logique ré-ajuster le modèle sans cette variable avant de tirer des conclusions.

Maintenant, si vous avez codé les non-drogués en "0" et les non-dépressifs également (ce que vous ne dites pas), alors de fait d'être à la fois drogué et dépressif semble augmenter la durée modélisée de 7.36792 + 5.34589 (par rapport à la référence, i.e., non-drogué et non-dépressif). Et c'est tout (pas d'effet de la "profession excercée").

Mais encore une fois, il faudrait ré-ajuster le modèle sans la variable de profession, et tout ceci ne serait valide que si la durée modélisée suit des lois normales (ce dont je douterais, personnellement).

HTH, Eric.
Eric Wajnberg
Eric Wajnberg

Nombre de messages : 1185
Date d'inscription : 14/09/2012

Revenir en haut Aller en bas

Interpréter une régression linéaire multiple Empty Re: Interpréter une régression linéaire multiple

Message par preliator le Dim 26 Avr 2020 - 13:28

Merci Smile

preliator

Nombre de messages : 39
Date d'inscription : 01/04/2019

Revenir en haut Aller en bas

Interpréter une régression linéaire multiple Empty Re: Interpréter une régression linéaire multiple

Message par preliator le Lun 27 Avr 2020 - 11:13

Bonjour,

Je me permets de partager une dernière une dernière petite zone d'ombre quant à ce modèle de régression linéaire multiple, concernant la variable quantitative "Age".

Sur le modèle, nous voyons un coefficient de 0.21. Selon mes recherches, cela signifie que lorsque l'âge d'une personne, par rapport à une autre, augmente de 1, la durée de l'entretien augmente de 0.212 minutes, et de manière significative.

Alors, pourquoi est-ce que je trouve un résultat et une p.value différent sur un modèle de régression linéaire simple :

Code:
> mod2 = lm(data$dur.interv~data$age)

Call:
lm(formula = data$dur.interv ~ data$age)

Residuals:
    Min      1Q  Median      3Q     Max
-62.470 -14.402  -1.712  12.341  60.055

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept) 57.04091    2.22028  25.691   <2e-16 ***
data$age     0.12625    0.05375   2.349   0.0191 *  
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 19.57 on 745 degrees of freedom
  (52 observations deleted due to missingness)
Multiple R-squared:  0.00735, Adjusted R-squared:  0.006018
F-statistic: 5.516 on 1 and 745 DF,  p-value: 0.0191

Où là, j’interprète que lorsqu'une personne qui a 1 an de plus qu'une autre, la durée de l'entretien augmente 0.126 minute (c'est très proche, mais différent).

Comment interpréter cette différence ?

Merci.

preliator

Nombre de messages : 39
Date d'inscription : 01/04/2019

Revenir en haut Aller en bas

Interpréter une régression linéaire multiple Empty Re: Interpréter une régression linéaire multiple

Message par Eric Wajnberg le Mar 28 Avr 2020 - 4:52

Parce que l'effet (i.e., la significativité, etc.) d'un variable dans un modèle dépend de la présence d'autres variables également dans le modèle. Il suffit d'imaginer par exemple que la variable "age" soit (même un peu) corrélée à d'autres variables, et la présence d'autres variables peuvent apporter une information redondante qui modifie les choses.

Par ailleurs (je n'ai pas fait le calcul) il n'est pas certain que 0.21289 ± 0.05884 diffère statistiquement de 0.12625 ± 0.05375.

HTH, Eric.
Eric Wajnberg
Eric Wajnberg

Nombre de messages : 1185
Date d'inscription : 14/09/2012

Revenir en haut Aller en bas

Interpréter une régression linéaire multiple Empty Re: Interpréter une régression linéaire multiple

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut


 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum