Se suponía era simple, o eso pensaba yo, que era simple. Sin embargo, me estuve dando cabezazos por horas porque por más que leía y releía los tutoriales no daba con la fórmula correcta. Usualmente cuando hago un cálculo estadístico, si es posible hacerlo paso a paso a mano o con ayuda de Calc (o Excel) lo realizo primero de esta forma, para aprehenderlo con detalle, lo comparo con la resolución ofrecida en algún libro y luego lo hago en R. En esta ocasión, quería usar la fórmula para el análisis de varianza mixto ofrecida en Balluerka y Vergara (2002). Lo hice. Luego me fui a R y por más que intentaba configurar el análisis no resultaba. Veamos el ejemplo:
sujetos | cond1ev1 | cond2ev1 | cond1ev2 | cond2ev2 |
s001 | 19.3 | 20.5 | 18.3 | 20.3 |
s004 | 16.8 | 17.8 | 17.0 | 18.0 |
s005 | 21.0 | 22.0 | 18.3 | 21.8 |
s006 | 19.5 | 22.3 | 16.0 | 22.0 |
s010 | 19.0 | 20.0 | 18.0 | 19.5 |
s011 | 16.8 | 19.5 | 17.8 | 18.8 |
s012 | 20.0 | 24.8 | 19.0 | 24.8 |
s013 | 21.3 | 21.3 | 19.0 | 21.8 |
s014 | 19.0 | 19.8 | 19.0 | 21.0 |
s015 | 20.0 | 20.0 | 18.3 | 21.3 |
s017 | 17.5 | 25.8 | 18.5 | 25.3 |
s019 | 18.8 | 19.5 | 17.5 | 19.3 |
s020 | 15.3 | 21.3 | 15.3 | 20.3 |
s021 | 18.8 | 19.5 | 19.3 | 20.5 |
s022 | 16.3 | 21.8 | 16.0 | 20.8 |
s023 | 19.0 | 21.5 | 20.0 | 22.5 |
s026 | 16.5 | 18.8 | 18.0 | 16.5 |
s027 | 18.0 | 23.0 | 19.0 | 22.3 |
s028 | 18.8 | 22.0 | 17.0 | 22.3 |
s030 | 16.0 | 23.8 | 17.0 | 22.5 |
s032 | 19.0 | 20.5 | 20.0 | 20.8 |
Sobre esta base de 21 sujetos, se pretende determinar el efecto de dos condiciones diferenciales (sin tratamiento en la primera columna y con tratamiento en la segunda columna). Las columnas 3 y 4 son los mismos tratamientos o condiciones, pero evaluado por un juez independiente, la intención era tener una corroboración independiente del efecto del tratamiento (la concordancia entre jueces se obtuvo mediante el coeficiente de correlación intraclase).
En fin, el cálculo se hizo con ambas condiciones sobre la evaluación de los dos jueces. En este ejemplo uso sólo las dos primeras columnas. Lo cuento para ser fiel al procedimiento, pero no importa mucho respecto de donde quiero llegar. El tema es que para el procesamiento analítico requiero usar anova mixto. Su formulación en R es:
modelo1 <- aov(value ~ condicion + Error(sujetos), data=mibasedatos) summary(modelo1)
Aquí hay dos variables nuevas, que tal como están en la base anteriormente mostrada no aparecen: son «value» y «condicion». La primera variable son los valores asumidos por la variable dependiente, la segunda es la condición o factor intrasujeto (sin y luego con tratamiento). Lo que ocurre es que hay que darle otra configuración de la base, proceso que se realiza con otro paquete, llamado reshape (lo contaré en la siguiente entrada).
Una vez tengo ambas variables, ya podría hacer el análisis, pero entonces tendríamos los resultados de un ANOVA ordinario. Para indicarle a R que se trata de un diseño intrasujetos, hay que señalar la fuente de Error. En este tipo de diseños la fuente de error son los sujetos, ya que se asumen los sujetos como una variable de efectos aleatorios y hay un grado de error asociado con cada sujeto en el contraste. Por esta razón aparece dicho término en la fórmula. Luego viene la indicación de la base de datos usada y al finalizar un summary() para ver los resultados.
El problema es que esta formulación da como resultado:
Error: sujetos Df Sum Sq Mean Sq F value Pr(>F) Residuals 1 0.43056 0.43056 Error: Within Df Sum Sq Mean Sq F value Pr(>F) condicion 1 82.18 82.180 24.28 1.574e-05 *** Residuals 39 132.00 3.385
No es el resultado correcto, porque debemos explicitar que «sujetos» (cada uno de los participantes como si fuesen un nivel de un mismo factor) representan también un factor, además de indicar explícitamente que «condición» también lo es. Así que aunque parezca un error muy estúpido, lo comento para que no le pase a Uds.. La expresión en R debiera ser:
modelo2 <- aov(value ~ factor(condicion) + Error(factor(sujetos)), data=mibasedatos) summary(modelo1)
Esto da como resultado:
Error: factor(sujetos) Df Sum Sq Mean Sq F value Pr(>F) Residuals 20 70.896 3.5448 Error: Within Df Sum Sq Mean Sq F value Pr(>F) factor(condicion) 1 82.180 82.180 26.708 4.677e-05 *** Residuals 20 61.539 3.077
Que sí está correcto!
Suerte.
Bibliografía
Balluerka, N. y Vergara, A. I. (2002). Diseños de investigación experimental en psicología. Madrid: Prentice Hall.
Gracias, está siendo muy útil
pregunta, y cómo hacer test a posteriori cuando tienes mas de dos comparaciones?
Inés
Saludos, comparaciones en medidas repetidas o entre grupos. No entiendo tal como lo expresas.
Pablo
Que estructura de la base es requerida? usaste en verdad solo las dos primeras columnas? es decir cond1ev1 y cond2ev1 ?
Porque no presentas el ejemplo corrido completo?
Hice el corrimiento como indicas y me da como resultado:
Pr(>F)
4.98e-05 ***