Les posteurs les plus actifs de la semaine
Aytan
GLMM questions d'un novice Vote_lcapGLMM questions d'un novice Voting_barGLMM questions d'un novice Vote_rcap 
c@ssoulet
GLMM questions d'un novice Vote_lcapGLMM questions d'un novice Voting_barGLMM questions d'un novice Vote_rcap 
Adddd
GLMM questions d'un novice Vote_lcapGLMM questions d'un novice Voting_barGLMM questions d'un novice Vote_rcap 
Eric Wajnberg
GLMM questions d'un novice Vote_lcapGLMM questions d'un novice Voting_barGLMM questions d'un novice Vote_rcap 
gg
GLMM questions d'un novice Vote_lcapGLMM questions d'un novice Voting_barGLMM questions d'un novice Vote_rcap 


GLMM questions d'un novice

Aller en bas

GLMM questions d'un novice Empty GLMM questions d'un novice

Message par Phoenix Woody's le Mar 27 Aoû 2019 - 9:34

Bonjour,  j'ai besoin de quelques conseils pour mes analyses statistiques.

Je suis doctorant en sciences cognitives et dans le cadre de ma thèse, je me suis aperçu que les méthodes de tests statistiques couramment employées dans ma discipline (i.e. régressions linéaires), n'étaient, semble-t-il, pas appropriées aux données que j'ai recueillies lors de mon expérimentation. À force de recherches sur la toile, j'ai fini par comprendre que de devais probablement utiliser un modèle général linéaire mixte. Toutefois je ne suis pas certain qu'il s'agisse de la bonne méthode et je suis encore moins certain de la manière d'implémenter puis d'interpréter ces analyses dans mon cas particulier.

Avant toute choses, je suis très peu familier avec ce type d'analyses et j'avoue que rares sont les ressources en lignes qui me soient compréhensibles, il est donc fort possible que j'ai commis de grossières erreurs et si c'est le cas n'hésitez pas à me les signaler.

Pour énoncer plus clairement mon problème, je vais devoir prendre un petit temps et vous exposer le contexte expérimental avant d'en venir aux questions. Toutes mes excuses par avance pour la longueur des prochaines sections de ce message.

J'ai mené une expérimentation dans laquelle des participants devaient évaluer la criticité de situations de conduites variant suivant un paramètre appelé Gap Size et suivant le mode de conduite

Mes variables indépendantes étaient donc :
- Gap Size : 0.8s, 1.0s, 1.2s, ..., 3.0s
- Mode de conduite : Manuel vs Autonome

Mes variables dépendantes sont nombreuses, la plupart sont des valeurs d'évaluation subjectives fournies par les participants sur des échelles continues allant de 0 à 100. Ainsi par exemple, les conducteurs devaient estimer à quel point la situation était critique entre 0 et 100. J'obtiens  donc un certain nombre d'évaluations concernant entre autre:
- la criticité de la situation
- l'acceptation de la décision de la voiture autonome
- etc.


  • Mon premier objectif est de montrer qu'il existe une association significative entre la VI taille de l'espace d'insertion et les variable dépendantes.
  • Mon second objectif est de produire l'équation qui modélise cette association.
  • Mon troisième objectif est de tester s'il existe une interaction significative entre mes deux variables indépendantes sur mes variables dépendantes.
  • Mon quatrième objectif est de tracer les courbes associées aux modèles calculés et en obtenir les équations


Afin de gérer les éventuelles erreurs et variations dans les décisions, chaque participant était confronté à 3 situations de décision de changement de voie par Gap Size. Pour chaque Gap Size (0.8s, 1.0s, etc.) chaque participant fournissait donc 3 évaluations de criticité entre 0 et 100, 3 évaluations d'acceptation entre 0 et 100, etc. La moyenne de ces évaluations a été faite pour chaque participant et pour chaque taille d'espace.

J'ai donc obtenu 29 moyennes de criticité par taille d'espace. (dans certains cas des erreurs ont entraîné le retrait de la moyenne d'un ou deux individus).

Initialement j'ai pensé pouvoir faire de simples régressions linéaires pour tester les associations entre la taille du gap et les valeurs de criticité et d'acceptation.
Mais l'examen des résidu et des recherches approfondies m'ont appris que cette approche n'était pas appropriée dans la mesure où mes valeurs sont bornées entre 0 et 100.
La simple observation des distributions de données laisse à penser qu'elles peuvent être gérées par la création d'un modèle binomial.

J'ai donc suivi ce tutoriel sur les glmm du site statistique-et-logiciel-r (étant nouveau membre je n'ai pas l'autorisation de poster le lien) avec attention et tenté d'appliquer la procédure qui y est exposée.

J'ai conservé la variable taille de l'espace en tant que variable continue.

J'ai transformé les variables dépendantes en les divisant par 100 pour qu'elles soient comprises entre 0 et 1, ensuite j'ai transformé ma variable réponse (i.e. criticité, acceptation, etc.) en une variable combinée conformément à l'étape 6.1.
J'obtiens le résultat suivant pour la criticité considérée seule :

Code:
>
# Modèle mixte pour la criticité (GLMM)
> mixed_model_crit <- glmer(y_crit ~ Gap.size+(1|Participant_Number_factor),
+                           data=by_gap_NoEr_manu, family=binomial)
> summary(mixed_model_crit)
Generalized linear mixed model fit by maximum likelihood (Laplace Approximation) ['glmerMod']
 Family: binomial  ( logit )
Formula: y_crit ~ Gap.size + (1 | Participant_Number_factor)
   Data: by_gap_NoEr_manu

     AIC      BIC   logLik deviance df.resid
  4525.9   4537.4  -2260.0   4519.9      342

Scaled residuals:
     Min       1Q   Median       3Q      Max
-10.3755  -2.0490  -0.2388   1.9574   8.0239

Random effects:
 Groups                    Name        Variance Std.Dev.
 Participant_Number_factor (Intercept) 1.099    1.048  
Number of obs: 345, groups:  Participant_Number_factor, 29

Fixed effects:
            Estimate Std. Error z value Pr(>|z|)    
(Intercept)  3.75456    0.20048   18.73   <2e-16 ***
Gap.size    -2.34015    0.02633  -88.88   <2e-16 ***
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Correlation of Fixed Effects:
         (Intr)
Gap.size -0.228
A ce stade je pense avoir suivi la bonne procédure mais je n'en suis pas certain.
En revanche, je ne sais pas vraiment comment interpréter les résultats. Je suppose que la variable Gap Size a un effet significatif mais je n'en suis pas certain.

Par ailleurs il est indiqué dans le tutoriel qu'il faut vérifier la présence d'une overdispersion. J'utilise la fonction proposée pour cela et il s'avère qu'il y a bien overdispersion. J'utilise donc la fonction glmmPQL comme recommandée mais là encore je ne sais pas comment lire et interpréter la sortie obtenue :
Code:

> mixed_model_crit_PQL <- glmmPQL(y_crit ~ Gap.size, random=~1|Participant_Number_factor,
+                                 data=by_gap_NoEr_manu, family=quasibinomial)
itération 1
itération 2
itération 3
itération 4
> summary(mixed_model_crit_PQL)
Linear mixed-effects model fit by maximum likelihood
 Data: by_gap_NoEr_manu
  AIC BIC logLik
   NA  NA     NA

Random effects:
 Formula: ~1 | Participant_Number_factor
        (Intercept) Residual
StdDev:    1.000078 2.957555

Variance function:
 Structure: fixed weights
 Formula: ~invwt
Fixed effects: y_crit ~ Gap.size
                Value Std.Error DF t-value p-value
(Intercept)  3.697483 0.23272860 315  15.88753         0
Gap.size    -2.301879 0.07649474 315 -30.09199         0
 Correlation:
         (Intr)
Gap.size -0.571

Standardized Within-Group Residuals:
        Min          Q1         Med          Q3         Max
-3.37367876 -0.67947222 -0.04986471  0.66787439  2.66487413

Number of Observations: 345
Number of Groups: 29
J'avoue qu'à ce niveau je suis totalement perdu

Par ailleurs, je ne suis pas certain non plus de la syntaxe appropriée pour ajouter la variable indépendante Mode De Conduite à mon modèle. Pour l'instant j'ai utilisé celle-ci :
Code:

mixed_model_crit_manu_auto <- glmer(y_crit ~ Gap.size * Mode.de.conduite + (1|Participant_Number_factor),
                          data=by_gap_particip_aggreg, family=binomial)

Est-ce la bonne démarche ?

Enfin je ne sais pas comment tracer les courbes et obtenir leurs équations.

Toutes mes excuses pour la longueur du message,

Merci par avance pour votre aide

Phoenix Woody's

Nombre de messages : 3
Date d'inscription : 26/08/2019

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

GLMM questions d'un novice Empty Re: GLMM questions d'un novice

Message par Florent Aubry le Mer 28 Aoû 2019 - 8:57

Tu nous parle d'une VI appelée "taille de l'espace d'insertion" après nous avoir dit que :
Mes variables indépendantes étaient donc :
- Gap Size : 0.8s, 1.0s, 1.2s, ..., 3.0s
- Mode de conduite : Manuel vs Autonome
d'où vient cette variable ?
De plus, tu utilises comme facteur de regroupement une variable que tu nommes Participant_Factor_Number. Quelle lien entretient-elle avec les autres variables ?

De plus, dans un glm, l'utilisation de la famille binomiale suppose un comptage.

Pour une aide efficace, il faudrait que tu précises mieux tes données.

Florent Aubry

Nombre de messages : 242
Date d'inscription : 02/11/2015

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

GLMM questions d'un novice Empty Re: GLMM questions d'un novice

Message par Phoenix Woody's le Mer 28 Aoû 2019 - 9:35

Toutes mes excuses pour ces imprécisions, la variable indépendante "Gap size" est le nom anglicisé et raccourci pour la variable indépendante "taille de l'espace d'insertion" ces deux noms sont donc équivalents.

Le facteur de regroupement est Participant Number Factor il s'agit simplement du numéro du participant, je l'ai placé en tant que facteur de regroupement car chaque participant a été confronté à toutes les conditions expérimentales. Par exemple, le participant numéro 5 a fourni des évaluations subjectives entre 0 et 100 toutes les modalités de toutes les VI.

Concernant l'utilisation de la famille binomiale c'est l'un de mes problèmes en ce sens que je ne suis pas certain qu'il s'agisse de la bonne méthode. Dans mon cas, il ne s'agit pas d'un comptage mais de valeurs entre 0 et 100. Ces valeurs ne peuvent donc pas aller au delà de ces bornes.

Phoenix Woody's

Nombre de messages : 3
Date d'inscription : 26/08/2019

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

GLMM questions d'un novice Empty Re: GLMM questions d'un novice

Message par Florent Aubry le Mer 28 Aoû 2019 - 10:12

Je comprends mieux les variables. L'utilisation du Participation Number Factor comme facteur de regroupement est correcte. Par contre, je trouve que la traduction de Gap Size en "taille de l'espace d'insertion" n'est pas bonne. Je pense que quelque chose comme "delai" ou "temps attente" serait plus approprié.

Si la variable indépendante est une valeur (sans doute discrète) comprise entre 0 et 100, l'utilisation de la famille binomiale est fausse puisque la famille binomiale suppose soit une réponse vrai/faux soit un comptage nombre de succès vs. nombre d'échecs. Ce n'est absolument pas ton cas. Vu le nombre de valeurs, si elles sont assez bien réparties autour de 50, tu peux essayer en première approximation la famille normale comme on le fait 'naturellement' avec les notes. Si elles sont très regroupées vars une extrémités, c'est beaucoup plus délicat.

Florent Aubry

Nombre de messages : 242
Date d'inscription : 02/11/2015

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

GLMM questions d'un novice Empty Re: GLMM questions d'un novice

Message par Phoenix Woody's le Mer 28 Aoû 2019 - 10:34

Merci pour ces réponses,
Concernant la variable Gap Size, en fait elle porte bien son nom bien que l'unité soit en secondes, simplement je n'ai pas communiqué le détail des informations relatives à la construction de cette variable pour ne pas alourdir inutilement le post. En fait, la variable Gap size correspond à la taille de l'espace entre deux voitures dans le trafic. Cette taille d'espace d'insertion est mesurée en secondes de temps inter-véhiculaire c'est à dire le temps que mettrait un véhicule pour parcourir la distance qui le sépare du véhicule le précédant. Dans mon expérimentation j'ai fait varier cette taille d'espace de 0.8s à 3.0s par pas de 0.2s.

Concernant la variable dépendante, je comprends mieux, j'ai probablement mal compris les différentes sources d'information que j'ai trouvé en cherchant à vérifier ma démarche. Dans mon cas, la plupart du temps, les valeurs de VD (entre 0 et 100) sont proches de 0 (avec une faible variation) lorsque la variable gap size est proche de 0.8s, elles sont proches de 100 (avec également une faible variation) lorsque la variable gap size est proche de 3.0s entre ces deux extrêmes (i.e. lorsque gap size est proche de 1.8s) les valeurs sont proches de 50 et très étalées entre 0 et 100. Malheureusement, comme je suis inscrit depuis peu les règles d'utilisation du forum ne me permettent pas de partager des représentations graphiques de mes données.
Merci en tout cas pour votre réponse, je comprends maintenant mieux quelle a été mon erreur.

Phoenix Woody's

Nombre de messages : 3
Date d'inscription : 26/08/2019

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

GLMM questions d'un novice Empty Re: GLMM questions d'un novice

Message par Contenu sponsorisé


Contenu sponsorisé


Revenir en haut Aller en bas

Revenir en haut

- Sujets similaires

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