8 votos

¿Cómo determinar el tamaño del efecto de una prueba de suma de rangos de Wilcoxon en R?

Quiero determinar si hay una diferencia en los valores p medios entre dos grupos. Para hacer esto, realizo una prueba de sumas de rangos de Wilcoxon (los datos no siguen una distribución normal). Hasta aquí todo bien. Finalmente, quiero calcular el tamaño del efecto correspondiente. Desafortunadamente, R no proporciona esto. Tampoco proporciona un valor z con el que se pueda calcular fácilmente el tamaño del efecto usando: tamaño del efecto = z / sqrt(N)

Aquí hay un código R de ejemplo:

a=rep(0:1,each=20)                            #variable de agrupación
b=c(rnorm(20, .03,.01), rnorm(20, .02, .009)) #vector de valores p

d=cbind(a,b)

test = wilcox.test(b ~ a, data = d)     #realizar prueba de sumas de rangos de Wilcoxon
test

¿Alguien sabe cómo obtener el tamaño del efecto?

3 votos

Bienvenido a SO. He marcado tu pregunta para que se migre a www.crossvalidated.com, ya que tu pregunta es más estadística que cualquier otra cosa. En resumen: Prueba de RANK de Wilcoxon funciona con rangos, así que no estoy seguro de qué tamaño de efecto estás hablando. Obviamente no te da un valor z, ya que eso está vinculado a pruebas paramétricas, no a pruebas no paramétricas como Wilcoxon. Wilcoxon debe interpretarse en términos de cambio de ubicación.

6 votos

El test de suma de rangos de Wilcoxon no evalúa una diferencia en medias: prueba la desigualdad estocástica. Por lo tanto, la medida adecuada de un tamaño del efecto es la probabilidad de que $B \gt A$, menos el valor nulo de $1/2$.

0 votos

@whuber ¿Y cómo se calcula este tamaño de efecto? Por lo que he leído, debe ser un número entre 0 y 1 (¿o entre -1 y 1?), pero la respuesta más votada proporciona un número diferente (-6 en mi caso, incluso dividido por sqrt(N) sigue siendo < -1).

13voto

bheklilr Puntos 113

El estimador que corresponde a la prueba de Wilcoxon es el estimador de Hodges-Lehmann; se devuelve usando la opción conf.int=TRUE en wilcox.test, bajo "diferencia en la ubicación".

Para tu ejemplo:

> wilcox.test(b~a,data=d, conf.int=TRUE)

    Prueba de suma de rangos de Wilcoxon

data:  b por a 
W = 355, valor p = 6.914e-06
hipótesis alternativa: el desplazamiento de ubicación real no es igual a 0 
intervalo de confianza del 95 por ciento:
 0.008657301 0.021523993 
estimaciones de muestra:
diferencia en la ubicación 
            0.01442617 

Para obtener más información sobre la prueba de Wilcoxon, sus suposiciones y qué prueba realmente, y otros estimadores no paramétricos, este documento puede ser útil: www.stat.umn.edu/geyer/old03/5102/notes/rank.pdf

0 votos

Entonces, ¿lo que dices es que el tamaño del efecto es wilcox.test(b~a,data=d, conf.int=TRUE)$estimate / sqrt(20), ¿es correcto?

2voto

Primigenius Puntos 11

Obtenga la z para su fórmula mediante

library(coin)
mydf <- as.data.frame(d)
wilcoxsign_test(b ~ a, data = mydf, distribution="exact")

y calcule el tamaño del efecto con su fórmula, estableciendo N en 40

1 votos

Sospecho que esta respuesta sería de mayor interés si pudieras proporcionar detalles adicionales sobre las razones para usar la función R coin::wilcoxsign_test. ¿También te refieres a la fórmula OP, $\text{tamaño del efecto} = z / \sqrt{N}$?

0 votos

La razón para usar coin::wilcoxsign_test es que calcula un valor z.

1 votos

Otra forma de obtener z a partir de wilcox.test estándar es el algoritmo que Andy Fields implementó en su función rFromWilcox. Y sí, me refería al tamaño del efecto = z / sqrt(N).

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