La formule que l'on doit spécifier pour la formation d'un modèle à plusieurs niveaux (à l'aide lmer
de la lme4
R
bibliothèque) m'obtient toujours. J'ai lu d'innombrables manuels et tutoriels, mais je ne l'ai jamais bien compris.
Voici donc un exemple de ce tutoriel que j'aimerais voir formulé dans une équation. Nous essayons de modéliser la fréquence vocale en fonction du sexe (les femmes ont une voix plus aiguë que les hommes en général) et de l'attitude de la personne (qu'elle ait répondu de manière polie ou informelle) dans différents scénarios. De plus, comme vous pouvez le voir dans la subject
colonne, chaque personne a été soumise à des mesures plusieurs fois.
> head(politeness, n=20)
subject gender scenario attitude frequency
1 F1 F 1 pol 213.3
2 F1 F 1 inf 204.5
3 F1 F 2 pol 285.1
4 F1 F 2 inf 259.7
5 F1 F 3 pol 203.9
6 F1 F 3 inf 286.9
7 F1 F 4 pol 250.8
8 F1 F 4 inf 276.8
9 F1 F 5 pol 231.9
10 F1 F 5 inf 252.4
11 F1 F 6 pol 181.2
12 F1 F 6 inf 230.7
13 F1 F 7 inf 216.5
14 F1 F 7 pol 154.8
15 F3 F 1 pol 229.7
16 F3 F 1 inf 237.3
17 F3 F 2 pol 236.8
18 F3 F 2 inf 251.0
19 F3 F 3 pol 267.0
20 F3 F 3 inf 266.0
subject
, gender
et attitude
sont des facteurs (avec informal
et female
considérés comme des niveaux de base pour attitude
et gender
dans les équations ci-dessous). Maintenant, une idée est de former un modèle avec des interceptions différentes pour chacun subject
et scenario
:
politeness.model=lmer(frequency ~ attitude + gender +
(1|subject) + (1|scenario), data=politeness)
Si ma compréhension de la notation est correcte, cela correspond à:
attitude
gender
où désigne point de données, désigne le niveau de groupe pour et désigne le niveau de groupe pour pour point de données. et sont des indicateurs binaires.subject
scenario
attitude
gender
Pour introduire des pentes aléatoires d'attitude, nous pouvons écrire:
politeness.model = lmer(frequency ~ attitude + gender +
(1+attitude|subject) + (1+attitude|scenario), data=politeness)
Encore une fois, si ma compréhension est claire, cela correspond à:
attitude
gender
Maintenant, à quelle équation la R
commande suivante correspond-elle?
politeness.null = lmer(frequency ~ gender +
(1+attitude|subject) + (1+attitude|scenario), data=politeness)
attitude
être conditionné sur subject
et scenario
.