2 votos

Pruebas múltiples y regresión logística

Quiero realizar una serie de regresiones univariantes con diferentes síntomas (por ejemplo, fiebre, tos, estornudos) como variable de respuesta y una variable categórica (que siempre es la misma) como variable explicativa: el grupo de edad (0-4, 5-14, 15-64, 65+). En total hay 18 síntomas, por lo que quiero hacer 18 regresiones y corregir las pruebas múltiples con el método de Holm.

Para cada regresión obtengo 4 valores p: un valor p global del grupo de edad y 3 valores p que comparan los grupos de edad individuales con un grupo de edad de referencia (15-64). No estoy seguro de cómo calcular los intervalos de confianza y los valores p ajustados utilizando el método de Holm en este escenario. ¿Alguien sabe cómo hacerlo?

1voto

dan90266 Puntos 609

La R rms admite intervalos de confianza simultáneos generales. El analista puede especificar una serie de comparaciones, y el ajuste simultáneo se hará sobre todo el conjunto actual de comparaciones. Para más información, consulte la página rms contrast.rms junto con la función Predict y otras funciones. Aquí hay un ejemplo usando ols. Sustituya lrm por ols para hacer una regresión logística binaria o de probabilidades proporcionales.

require(rms)
set.seed(1)
n <- 800
treat <- factor(sample(c('drug','placebo'), n,TRUE))
sex   <- factor(sample(c('female','male'),  n,TRUE))
age   <- rnorm(n, 50, 10)
y     <- .05*age + (sex=='female')*(treat=='drug')*.05*abs(age-50) + rnorm(n)
f     <- ols(y ~ rcs(age,4)*treat*sex)
d     <- datadist(age, treat, sex); options(datadist='d')

# show separate estimates by treatment and sex

plot(Predict(f, age, treat, sex='female'))
plot(Predict(f, age, treat, sex='male'))
ages  <- seq(35,65,by=5); sexes <- c('female','male')
w     <- contrast(f, list(treat='drug',    age=ages, sex=sexes),
                     list(treat='placebo', age=ages, sex=sexes),
                     conf.type='simultaneous'))
xYplot(Cbind(Contrast, Lower, Upper) ~ age | sex, data=w,
       ylab='Drug - Placebo')
xYplot(Cbind(Contrast, Lower, Upper) ~ age, groups=sex, data=w,
       ylab='Drug - Placebo', method='alt bars')

0voto

TimDaMan Puntos 116

Para el intervalo de confianza, creo que puedes utilizar los resultados de la regresión logística. Para ajustar los valores p, consulte este enlace de la wiki: http://en.wikipedia.org/wiki/Holm%E2%80%93Bonferroni_method

A mi entender, primero se pone a prueba un grupo de edad general y luego se prueba una hipótesis anidada. Le recomendaría que probara primero los efectos globales del grupo y que después profundizara para probar los grupos individuales.

0voto

Neo Puntos 857

Así que imaginemos que sólo hay 2 síntomas y que tengo los siguientes resultados:

### Fever: ###

Overall p-value
Wald test:
----------

Chi-squared test:
X2 = 16.8, df = 3, P(> X2) = 0.00078

Coefficients:
                            Estimate Std. Error z value Pr(>|z|)    
(Intercept)                   1.5849     0.1103  14.366  < 2e-16 ***
relevel(agegp, "15-64")0-4    0.6323     0.3361   1.881  0.05994 .  
relevel(agegp, "15-64")5-14   0.7273     0.2182   3.333  0.00086 ***
relevel(agegp, "15-64")65+   -1.0253     0.6364  -1.611  0.10718

### Cough ###

Overall p-value
Wald test:
----------

Chi-squared test:
X2 = 8.5, df = 3, P(> X2) = 0.036

Coefficients:
                           Estimate Std. Error z value Pr(>|z|)    
(Intercept)                   2.2693     0.1416  16.024  < 2e-16 ***
relevel(agegp, "15-64")0-4   -0.3234     0.3189  -1.014  0.31051    
relevel(agegp, "15-64")5-14  -0.5850     0.2050  -2.854  0.00432 ** 
relevel(agegp, "15-64")65+   -0.7652     0.7945  -0.963  0.33544

¿Cuáles serían mis valores p ajustados (utilizando el método de Holm) en este escenario de tener sólo 2 síntomas y cómo calcularía los intervalos de confianza?

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