IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

R Discussion :

Aide d'interpretation pour ANOVA


Sujet :

R

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Octobre 2019
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 28
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Transports

    Informations forums :
    Inscription : Octobre 2019
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Aide d'interpretation pour ANOVA
    Bonjour,

    J'ai effectué différents tests ANOVA.

    Pour le premier j'ai effectué ce code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    significatisupp.aov <- aov(TG$longueur~TG$supp,data = TG)
    summary(significatisupp.aov)
    Ca me donne ceci:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     Df Sum Sq Mean Sq F value Pr(>F)  
    TG$supp      1    205  205.35   3.668 0.0604 .
    Residuals   58   3247   55.98                 
    ---
    Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
    Donc une p value qui n'est pas significative.

    Lorsque j'effectue un nouveau code, avec une variable en plus :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    significatos.aov  <- aov(TG$longueur~TG$supp*TG$dose,data = TG)
    summary(significatos.aov)
    Cela me donne :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     Df Sum Sq Mean Sq F value   Pr(>F)    
    TG$supp          1  205.4   205.4  12.317 0.000894 ***
    TG$dose          1 2224.3  2224.3 133.415  < 2e-16 ***
    TG$supp:TG$dose  1   88.9    88.9   5.333 0.024631 *  
    Residuals       56  933.6    16.7                     
    ---
    Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
    Comment expliquer que ma p value est ici hautement significative étant donner que l'on parle toujours des suppléments ?

    Merci pour votre aide!

  2. #2
    Membre confirmé
    Inscrit en
    Février 2011
    Messages
    276
    Détails du profil
    Informations forums :
    Inscription : Février 2011
    Messages : 276
    Points : 561
    Points
    561
    Par défaut
    Bonjour,

    ça peut arriver quand deux variables explicatives sont colinéaires ou quand il y a une interaction entre les variables. Dans ce dernier cas seul le test de l'interaction est réellement important parce qu'il te dit que l'effet de supp varie en fonction de dose et que réciproquement l'effet de dose varie avec celui de supp.

    Prend ce cas extrême :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    x <- seq(-5, 5, le = 100)
    x <- rep(x, 2)
    f <- gl(2, 100)
    set.seed(100)
    y <- ifelse(f == "1", -3, 3)*x + rnorm(200)
    plot(y ~ x)
    anova(lm(y ~ x))
    Analysis of Variance Table
     
    Response: y
               Df Sum Sq Mean Sq F value Pr(>F)
    x           1      0   0.000       0 0.9991
    Residuals 198  15741  79.499               
     
    anova(lm(y ~ x*f))
    Analysis of Variance Table
     
    Response: y
               Df  Sum Sq Mean Sq    F value Pr(>F)    
    x           1     0.0     0.0     0.0001 0.9915    
    f           1     0.0     0.0     0.0040 0.9495    
    x:f         1 15576.0 15576.0 18536.7712 <2e-16 ***
    Residuals 196   164.7     0.8                      
    ---
    Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
    Au départ x n'explique rien du tout mais dès que tu prends en compte f et notamment son interaction avec f alors la tout change.

    L'exemple est caricatural ici, mais si tes variables sont un peu corrélées et surtout s'il y a une interaction entre les deux tu peux avoir ce genre de choses.
    Encore une fois le plus important c'est le résultat de l'interaction. Après il ne faut pas s'affranchir du diagnostique des résidus via des graphiques notamment.

    cdlt

  3. #3
    Membre éclairé
    Homme Profil pro
    Chercheur
    Inscrit en
    Décembre 2015
    Messages
    327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2015
    Messages : 327
    Points : 793
    Points
    793
    Par défaut
    L'une des manières simples de tester les colinéarités entre variables explicatives est de calculer le VIF (Variance Inflation Factor), fonction vif dans R. S'il est élevé, c'est un signe de colinéarité.

    De plus, il faut savoir que la fonction anova teste la somme des carrés de type I, c'est-à-dire qu'elle utilise une approche séquentielle : ce qu'apporte la première variable puis la seconde de manière marginale, etc. Donc soit on a une véritable raison d'utiliser une formule de type Y ~ A * B et la somme des carrés de type I, soit c'est pifométrique, alors soit essayer les deux écritures de formule (Y ~ A * B et Y ~ B * A) et on peut avoir des surprises, soit utiliser la fonction Anova (package car) et une somme des carrés de type II (défaut de Anova). Ce type de SC donne une idée de l'influence globales de chacune des variables. Mais je n'ai rien à ajouter sur ce que dit tototode au sujet de l'interaction.

Discussions similaires

  1. [C#] A l'aide! comment faire pour modifier un noeud?
    Par irnbru dans le forum Windows Forms
    Réponses: 12
    Dernier message: 15/11/2005, 17h41
  2. aide petit programme pour débutant
    Par kartp0rqx dans le forum C
    Réponses: 16
    Dernier message: 14/10/2005, 19h31
  3. [Système][Class-Path]cherche aide sous java pour fedoracore ou linux
    Par mickey hollywood dans le forum Général Java
    Réponses: 4
    Dernier message: 29/03/2005, 01h13
  4. Aide sur WinDbg pour Windows 98
    Par robert.michel9 dans le forum x86 32-bits / 64-bits
    Réponses: 2
    Dernier message: 16/08/2004, 22h08

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo