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.

3 comentarios sobre «Cálculo mediante R del Análisis de Varianza Mixto en un diseño intrasujeto simple»

  1. ines

    Gracias, está siendo muy útil

    pregunta, y cómo hacer test a posteriori cuando tienes mas de dos comparaciones?

    1. Inés
      Saludos, comparaciones en medidas repetidas o entre grupos. No entiendo tal como lo expresas.

      Pablo

  2. René Palestina

    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 ***

Deja tu comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.