¿Qué es un análisis post-hoc válido para un ANOVA de medidas repetidas de tres vías?

10

He realizado un ANOVA de medidas repetidas de tres vías; ¿Qué análisis post-hoc son válidos?

Este es un diseño totalmente equilibrado (2x2x2) con uno de los factores que tiene una medida repetida dentro de los sujetos. Soy consciente de los enfoques multivariados para ANOVA de medidas repetidas en R, pero mi primer instinto es proceder con un estilo simple de aov () de ANOVA:

aov.repeated <- aov(DV ~ IV1 * IV2 * Time + Error(Subject/Time), data=data)

DV = variable de respuesta

IV1 = variable independiente 1 (2 niveles, A o B)

IV2 = variable independiente 2 (2 niveles, sí o no)

IV3 = Tiempo (2 niveles, antes o después)

Asunto = ID de sujeto (40 sujetos totales, 20 para cada nivel de IV1: nA = 20, nB = 20)

summary(aov.repeated)

    Error: Subject
          Df Sum Sq Mean Sq F value   Pr(>F)   
IV1       1   5969  5968.5  4.1302 0.049553 * 
IV2       1   3445  3445.3  2.3842 0.131318   
IV1:IV2   1  11400 11400.3  7.8890 0.007987 **
Residuals 36  52023  1445.1                    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

Error: Subject:Time
               Df Sum Sq Mean Sq F value   Pr(>F)   
Time            1    149   148.5  0.1489 0.701906   
IV1:Time        1    865   864.6  0.8666 0.358103   
IV2:Time        1  10013 10012.8 10.0357 0.003125 **
IV1:IV2:Time    1    852   851.5  0.8535 0.361728   
Residuals      36  35918   997.7                    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1   1 

Alternativamente, estaba pensando en usar el paquete nlme para un ANOVA de estilo lme:

aov.repeated2 <- lme(DV ~ IV1 * IV2 * Time, random = ~1|Subject/Time, data=data)
summary(aov.repeated2)

Fixed effects: DV ~ IV1 * IV2 * Time 
                                Value Std.Error DF   t-value p-value
(Intercept)                      99.2  11.05173 36  8.975972  0.0000
IV1                              19.7  15.62950 36  1.260437  0.2156
IV2                              65.9  15.62950 36  4.216385  0.0002 ***
Time                             38.2  14.12603 36  2.704228  0.0104 *
IV1:IV2                         -60.8  22.10346 36 -2.750701  0.0092 **
IV1:Time                        -26.2  19.97722 36 -1.311494  0.1980
IV2:Time                        -57.8  19.97722 36 -2.893295  0.0064 **
IV1:IV2:Time                     26.1  28.25206 36  0.923826  0.3617

Mi primer instinto post-hoc de interacciones significativas de 2 vías con contrastes de Tukey usando glht () del paquete multcomp:

data$IV1IV2int <- interaction(data$IV1, data$IV2)
data$IV2Timeint <- interaction(data$IV2, data$Time)

aov.IV1IV2int <- lme(DV ~ IV1IV2int, random = ~1|Subject/Time, data=data)
aov.IV2Timeint <- lme(DV ~ IV2Timeint, random = ~1|Subject/Time, data=data)

IV1IV2int.posthoc <- summary(glht(aov.IV1IV2int, linfct = mcp(IV1IV2int = "Tukey")))
IV2Timeint.posthoc <- summary(glht(aov.IV2Timeint, linfct = mcp(IV2Timeint = "Tukey")))

IV1IV2int.posthoc
#A.Yes - B.Yes == 0        0.94684   
#B.No - B.Yes == 0         0.01095 * 
#A.No - B.Yes == 0         0.98587    I don't care about this
#B.No - A.Yes == 0         0.05574 .  I don't care about this
#A.No - A.Yes == 0         0.80785   
#A.No - B.No == 0          0.00346 **

IV2Timeint.posthoc 
#No.After - Yes.After == 0           0.0142 *
#Yes.Before - Yes.After == 0         0.0558 .
#No.Before - Yes.After == 0          0.5358   I don't care about this
#Yes.Before - No.After == 0          0.8144   I don't care about this
#No.Before - No.After == 0           0.1941  
#No.Before - Yes.Before == 0         0.8616

El principal problema que veo con estos análisis post-hoc son algunas comparaciones que no son útiles para mis hipótesis.

Cualquier sugerencia para un análisis post-hoc apropiado es muy apreciada, gracias.

Editar: preguntas y respuestas relevantes que apuntan a probar matrices de contraste manuales

RobJackson28
fuente
Su modelo de efecto aleatorio parece extraño: /se usa para denotar la anidación (como se ve típicamente en un experimento de parcela dividida), a diferencia de su uso en el Errortérmino de aov()donde principalmente indica cómo construir estratos de error .
chl
@chl He formateado el Errortérmino de aov()esta manera para especificar que Timees el factor dentro de los grupos. De Baron Error(subj/(color + shape))parece ser utilizado de la misma manera.
RobJackson28
@chl Gracias por mencionar el lmemodelo, no tengo claro el uso adecuado de /. ¿Cómo especificarías Timecomo el factor dentro de los grupos como Error()con aov()?
RobJackson28

Respuestas:

2

Creo que los estadísticos le dirán que siempre hay un problema con cualquier análisis post hoc porque ver los datos puede influir en lo que mira y podría estar sesgado porque está buscando resultados significativos. La FDA en estudios de ensayos clínicos requiere que el plan estadístico se especifique completamente en el protocolo. en un modelo lineal, ciertamente podría especificar previamente los contrastes que le gustaría ver en caso de que ANOVA o ANCOVA encuentren una diferencia general. Estos contrastes preespecificados estarían bien si el tratamiento habitual para la multiplicidad también forma parte de él.

Michael R. Chernick
fuente
Este es más o menos el problema que tengo, dado que el análisis me fue entregado (sin ninguna planificación estadística a priori que no sea "vamos a hacer un montón de pruebas t"). Me las arreglé para destilar las hipótesis básicas que se pretendían originalmente, pero tengo algunos problemas con la sintaxis post-hoc. Justificar todos estos pasos para el experimentador es mi objetivo principal, para evitar el dogma de la prueba t. El objetivo final: hacer que la planificación estadística sea una necesidad para futuros diseños experimentales. Por el momento, tengo que trabajar con lo que tengo.
RobJackson28
1
Entonces, todo lo que agregaría es que si desea continuar con los análisis post-hoc, no veo ningún problema siempre que realice el ajuste de multiplicidad adecuado.
Michael R. Chernick
1
¿Estoy en lo cierto al suponer que los ajustes de multiplicidad son análogos a los ajustes de error familiares? Por ejemplo, Tukey's, Bonferroni, etc.
RobJackson28
Exactamente correcto. Los métodos de arranque y permutación también están disponibles en SAS, por ejemplo, con Proc MULTTEST. Vea el trabajo de Westfall y Young.
Michael R. Chernick
Gracias por la ayuda @Michael, lo agradezco. Sin embargo, todavía no estoy claro sobre la sintaxis para usar R. Específicamente, no estoy seguro de si es más apropiado especificar manualmente matrices de contraste para los contrastes de Tukey relevantes glht()o realizar todas las comparaciones de forma predeterminada. Además, no estoy seguro de cómo manejar adecuadamente la medida repetida Timeen términos de post-hoc.
RobJackson28
1

Si tiene un paquete de software como SAS, probablemente usaría un proceso mixto para hacer el modelo mixto de medidas repetidas y si especifica qué contraste desea usar, SAS lo manejará adecuadamente por usted. También puede hacerlo con la opción repetida en PROC GLM, pero tenga cuidado porque se comportan de manera diferente y hacen suposiciones diferentes. Las observaciones repetidas suelen estar correlacionadas porque tienen algo en común. A menudo tengo medidas repetidas en el mismo paciente en diferentes momentos. Entonces, al calcular los contrastes, los términos de covarianza entran en el problema.

Michael R. Chernick
fuente