Comment adapter un modèle à effets aléatoires avec l'Objet comme aléatoire, dans R?

De données de la forme suivante

myDat = structure(list(Score = c(1.84, 2.24, 3.8, 2.3, 3.8, 4.55, 1.13, 
2.49, 3.74, 2.84, 3.3, 4.82, 1.74, 2.89, 3.39, 2.08, 3.99, 4.07, 
1.93, 2.39, 3.63, 2.55, 3.09, 4.76), Subject = c(1L, 1L, 1L, 
2L, 2L, 2L, 3L, 3L, 3L, 4L, 4L, 4L, 5L, 5L, 5L, 6L, 6L, 6L, 7L, 
7L, 7L, 8L, 8L, 8L), Condition = c(0L, 0L, 0L, 1L, 1L, 1L, 0L, 
0L, 0L, 1L, 1L, 1L, 0L, 0L, 0L, 1L, 1L, 1L, 0L, 0L, 0L, 1L, 1L, 
1L), Time = c(1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 
1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L)), .Names = c("Score", 
"Subject", "Condition", "Time"), class = "data.frame", row.names = c(NA, 
-24L))

Je voudrais modèle de Score en fonction du Sujet, de la Condition et de l'Heure. Chacun (homme) sous réserve du score a été mesurée à trois reprises, indiqué par la variable Temps, j'ai donc des mesures répétées.

Comment puis-je construire dans la R d'un modèle à effets aléatoires avec le Sujet des effets de montée en aléatoire?

ADDITIF: Il a été demandé comment j'ai généré ces données. Vous l'aurez deviné, les données sont fausses comme le jour est long. Le Score est le temps, plus de bruit aléatoire et d'être dans la Condition 1 ajoute un point au Score. Il est instructif qu'un Psy de l'installation. Vous avez une tâche où les gens du score s'améliore avec la pratique (le temps) et un médicament (condition==1) qui améliore le score.

Voici un peu plus réaliste de données aux fins de la présente discussion. Maintenant simulé les participants ont un hasard "compétence" niveau qui est ajouté à leurs scores. Aussi, les facteurs sont maintenant des chaînes.

myDat = structure(list(Score = c(1.62, 2.18, 2.3, 3.46, 3.85, 4.7, 1.41, 
2.21, 3.32, 2.73, 3.34, 3.27, 2.14, 2.73, 2.74, 3.39, 3.59, 4.01, 
1.81, 1.83, 3.22, 3.64, 3.51, 4.26), Subject = structure(c(1L, 
1L, 1L, 2L, 2L, 2L, 3L, 3L, 3L, 4L, 4L, 4L, 5L, 5L, 5L, 6L, 6L, 
6L, 7L, 7L, 7L, 8L, 8L, 8L), .Label = c("A", "B", "C", "D", "E", 
"F", "G", "H"), class = "factor"), Condition = structure(c(1L, 
1L, 1L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 2L, 2L, 1L, 1L, 1L, 2L, 2L, 
2L, 1L, 1L, 1L, 2L, 2L, 2L), .Label = c("No", "Yes"), class = "factor"), 
Time = structure(c(1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 
2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L), .Label = c("1PM", 
"2PM", "3PM"), class = "factor")), .Names = c("Score", "Subject", 
"Condition", "Time"), class = "data.frame", row.names = c(NA, 
-24L))

Voir:

library(ggplot2)
qplot(Time, Score, data = myDat, geom = "line", group = Subject, colour = factor(Condition))
  • Vous pouvez de façon plus concise, la construction d'un bloc de données à l'aide de la data.frame fonction: myDat <- données.cadre(Note = c(1.84, 2.24, 3.8, 2.3, 3.8, 4.55, 1.13, 2.49, 3.74, 2.84, 3.3, 4.82, 1.74, 2.89, 3.39, 2.08, 3.99, 4.07, 1.93, 2.39, 3.63, 2.55, 3.09, 4.76), Sujet = c(1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3 L, 3 L, 3 L, 3 L, 3L, 4L, 4L, 4L, 4L, 4L, 4L), Condition = c(0L, 0L, 0L, 1L, 1L, 1L, 0L, 0L, 0L, 1L, 1L, 1L, 0L, 0L, 0L, 1L, 1L, 1L, 0L, 0L, 0L, 1L, 1L, 1L), le Temps = c(1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L, 1L, 2L, 3L 1L, 2L, 3L, 1L, 2L, 3L))
  • La structure de la syntaxe est ce que vous obtenez lorsque vous utilisez dput dans un ensemble de données.cadre.
  • Apprendre quelque chose de nouveau chaque jour!