1 votos

media de medidas repetidas...detectar el error (matlab)

Tengo una población de 114 sujetos. Para cada sujeto tengo medidas repetidas (1 cada día) de la variable evaluada (nivel de actividad). El número de medidas varía para cada sujeto (número de días evaluados) y la mediana del número de medidas para cada sujeto es 4.

Los datos pueden descargarse aquí

¿Puedo simplemente tomar la media de las medidas para continuar con mi análisis estadístico de la población, es decir, cada sujeto estará representado por la medida media a lo largo de los días evaluados. ¿Debo realizar una prueba estadística antes de hacerlo? ¿Cuál?

¿Podría sugerirnos el flujo de trabajo? Mi propósito es averiguar si existen diferencias en la variable medida entre grupos de sujetos (digamos que los 57 primeros sujetos son del grupo A y los 57 últimos del grupo B).

Mi intento (los resultados se obtienen con MATLAB, pero deberían ser interpretables):

  • Ajuste un modelo repetido del tipo "t1-t5 ~ Grupo", lo que significa que las medidas t1-t5 son las respuestas y los grupos son la variable de predicción.

    Hora = [1 2 3 4 5]' %array que contiene el día de la evaluación

    rm = fitrm (table,'t1-t5 ~ Group','WithinDesign',Time) %table es una tabla matlab que contiene los datos

los coeficientes de los modelos son

                   t1         t2         t3         t4        t5   
                 _______    _______    _______    ______    _______

(Intercept)       425.64     412.64     425.64    414.05     443.64
Group_A          -52.182    -12.636    -23.182     -47.5    -45.455
  • Compruebo la prueba de esfericidad de Mauchly

    tbl = mauchly (rm) % si es pequeño use la corrección cuando calcule el valor p en ranova

tbl =

   W       ChiStat    DF    pValue 
_______    _______    __    _______

0.84303    3.1446     9     0.95828

el valor p es > 0,05, por lo que no tengo que corregir el ANOVA repetido

  • Ejecuto ANOVA repetido

    ranovatbl = ranova (rm)

ranovatbl =

                      SumSq       DF    MeanSq       F       pValue     pValueGG    pValueHF    pValueLB
                    __________    __    ______    _______    _______    ________    ________    ________

(Intercept):Time         13611     4    3402.6    0.98232    0.42203    0.41863     0.42203     0.33347 
Group:Time               26256     4    6564.1      1.895    0.11938    0.12457     0.11938     0.18386 
Error(Time)         2.7711e+05    80    3463.9

Me dice que no hay efecto de los días en el nivel de actividad, y que no hay diferencias entre grupos.

  • Calculo las medias marginales

    M = margmean (rm,{'Grupo'})

 Group      Mean     StdErr    Lower     Upper 
_______    ______    ______    ______    ______

A          388.13    18.68     349.16    427.09
B          460.51    18.68     421.54    499.47

1voto

SkyBeam Puntos 541

He importado tu conjunto de datos, lo he convertido a formato largo y he ejecutado un modelo mixto en R. He utilizado los paquetes lme4 y lmerTest:

M1 <- lmer(outcome ~ group + time + (1|ID), data=cv.long)

Como puede ver, he incluido el tiempo como variable independiente lineal y el ID (ID de la persona) como constante aleatoria. Esto da una estimación de 25,266 para pertenecer al grupo B, y un error estándar de 12,328. P = 0,0427, por lo que este modelo apoya una ligera diferencia entre los grupos.

Cargué los datos en SPSS, convertí las variables que tenían NaN en variables numéricas y guardé los datos en un archivo .sav. También cambié el grupo A a 1 y el grupo B a 2. A continuación apliqué el siguiente código en R:

library(foreign)
library(lme4)
library(lmerTest)
cv.data <- read.spss("/Users/jonasberge/Dropbox/R/crossvalidated_data.sav",  to.data.frame = T)
cv.long <- reshape(cv.data, 
    varying = c("t1", "t2", "t3", "t4", "t5"), 
    v.names = "outcome",
    timevar = "time", 
    times = c(1, 2, 3, 4, 5), 
    direction = "long")
M1 <- lmer(outcome ~ Group + time + (1|id), data=cv.long)
summary(M1)

El resultado es el siguiente:

Linear mixed model fit by REML 
t-tests use  Satterthwaite approximations to degrees of freedom ['lmerMod']
Formula: outcome ~ Group + time + (1 | id)
   Data: cv.long

REML criterion at convergence: 5376.7

Scaled residuals: 
    Min      1Q  Median      3Q     Max 
-3.3032 -0.5652  0.0447  0.5502  4.6394 

Random effects:
 Groups   Name        Variance Std.Dev.
 id       (Intercept) 3213     56.69   
 Residual             4482     66.95   
Number of obs: 466, groups:  ID, 114

Fixed effects:
            Estimate Std. Error      df t value Pr(>|t|)    
(Intercept)  401.707     11.078 252.600  36.263   <2e-16 ***
Group2        25.266     12.328 112.200   2.049   0.0427 *  
time           1.421      2.610 361.300   0.545   0.5864    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Correlation of Fixed Effects:
       (Intr) group2
Group2 -0.572       
time   -0.613  0.019

Puede descargar el conjunto de datos aquí: https://www.dropbox.com/s/42y6sgtznl1wfju/crossvalidated_data.sav?dl=0

Espero que esto ayude.

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X