[R-es] Realizar interacciones entre varios factores con el test no paramétrico de Kruskal walis

José Trujillo truj|||o @end|ng |rom unex@e@
Vie Feb 11 10:53:57 CET 2022


Estimado Juan Bautista,

El test de Kruskal-Wallis no es un test para analizar varios factores, 
sino exclusivamente uno solo. Y no es eficiente analizar factores que 
han intervenido conjuntamente de uno en uno, porque la mezcla en un 
grupo o nivel de un KW de individuos que pertenecen a diversos grupos en 
función de otro factor, elevará mucho variabilidad dentro del grupo y el 
test tendrá muy poca potencia.

Si tuvieses solo dos factores sin interacción el test clásico es el de 
Friedman, aunque las implementaciones clásicas de los paquetes stats, 
coin, agricolae, y otros solo incluyen el diseño en bloques completos 
aleatorizados sin réplicas. Los paquetes NSM3 y muStat proporcionan 
versiones con réplicas.

La interacción es un problema poco amigable con la estadística basada en 
rangos. Oliver et al. (Psicothema 2009. Vol. 21, no 1, pp. 152-158) 
publicaron una solución directa, obvia, pero que en mi experiencia 
particular tiene poca potencia.

Una vez aceptada la existencia de interacción, el procedimiento de 
análisis tradicional es construir un factor mediante la combinación de 
los factores que interaccionan y finalmente aplicarle el test de 
Kruskal-Wallis. Es decir, puesto que KW es un procedimiento para un 
factor, convertir dos factores en uno. La idea es que si hay 
variabilidad entre los tratamientos que no es debida a los efectos de 
los niveles de los factores principales, cada tratamiento se puede 
considerar con un nivel de un factor conjunto o combinado. La 
combinación se obtiene:

Sea el factor A con niveles A1, A2, ...

Sea el factor B con niveles B1, B2, ...

El factor de tratamientos combinados AB tendría los niveles: A1B1, A1B2, 
..., A2B1, A2B2, ...

En lenguaje R, asumiendo que Dataset es el data.frame con los datos:

Dataset$tratamientos <- as.factor(with(Dataset, paste(Factor1, Factor2)))

Al factor "tratamientos" se le aplicaría KW y permitiría estudiar las 
diferencias que se crean entre los distintos tratamientos sean debidas a 
los factores principales o a la interacción. En un modelo experimental 
de efectos fijados es el análisis adecuado. Para un modelo experimental 
de efectos aleatorios o mixtos el enfoque preferible quizás sería el que 
propone Jorge Vélez.

Mi recomendación sería recurrir a la propuesta de Hettmansperger. Para 
este tipo de problemas Hettmansperger propone utilizar un contraste 
basado en el modelo lineal general con las estimaciones propuestas por 
Jaeckel. Jaeckel propone utilizar mínimos cuadrados residuales 
ponderados en función del rango de las observaciones. Este modelo 
implementado en el paquete, Rfit es la opción más flexible.

El modelo ANOVA con interacción, estimado mediante la varianza residual 
de Jaeckel se escribe simplemente:

Model1<-rfit(Respuesta ~ Factor1*Factor2, data=Dataset)

summary(Model1)

Para realizar contrastes en los parámetros del modelo, el paquete rfit 
incluye la función drop.test que aplica el contraste propuesto por 
Hettmansperger y por ejemplo permite contrastar la existencia de 
interacción:

ModelA<-rfit(Respuesta ~ Factor1+Factor2, data=Dataset)

drop.test(Model1,ModelA)

Igualmente ModelA puede ser cualquier modelo más simple (menos 
parámetros no nulos) que el modelo completo Model1.

La ponderación de los residuos por rangos hace que los tests de 
Wilcoxon, Kruskal-Wallis, Friedman y la estimación de la regresión de 
Theil sean casos particulares de esta estimación propuesta por Jaeckel.

Espero haber ayudado.

Un saludo.


El 11/2/22 a las 3:17, Jorge I Velez escribió:
>
> El El jue, 10 de feb. de 2022 a la(s) 9:29 a. m., Relloso Barrio, Juan 
> Bautista <jbautista using neiker.eus> escribió:
>
>     Estoy realizando análisis de varianza con unos datos que no tienen
>     la normalidad necesaria.
>
>     Es por esto que estoy utilizando el test no paramétrico de kruskal
>     walis.
>
>     Pero no sé como decirle en “R” para que me calcule las
>     interacciones entre los factores analizados.
>
>     Un saludo.
>
>     *Juan Bautista Relloso Barrio*
>
>     Coordinador de Equipos e Infraestructuras | Técnico de Cultivos
>     del Departamento de Producción Vegetal
>
>     Talde eta Azpiegitura Koordinatzailea | Laborantza teknikaria
>     Landare Ekoizpen Departamentua
>
>     jbautista using neiker.eus <mailto:jbautista using neiker.eus>| M. 688 62 98 14
>
>     *www.neiker.eus* <http://www.neiker.eus/>****
>     <https://www.linkedin.com/company/neiker/>****
>     <https://twitter.com/neiker_BRTA>**
>     <https://www.facebook.com/neikerBRTA>****
>     <https://www.youtube.com/user/neikertec>**
>
>     *ej_ekonomia_garapen_lateral
>     *https://www.emakunde.euskadi.eus/contenidos/informacion/violencia_puntolila/eu_def/adjuntos/punto.lila.jpg**
>
>     **
>
>     PRIBATUTASUN POLITIKA
>     <https://neiker.eus/eu/pribatutasun-politika/>| POLÍTICA DE
>     PRIVACIDAD <https://neiker.eus/es/politica-privacidad/>| LEGAL
>     NOTICE <https://neiker.eus/en/privacy-policy/>__
>
>     _______________________________________________
>     R-help-es mailing list
>     R-help-es using r-project.org
>     https://stat.ethz.ch/mailman/listinfo/r-help-es
>
> -- 
> Sent from my phone. Please excuse my brevity and misspelling.
>
> _______________________________________________
> R-help-es mailing list
> R-help-es using r-project.org
> https://stat.ethz.ch/mailman/listinfo/r-help-es
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20220211/c3c3c8cf/attachment-0001.html>

------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: image001.gif
Type: image/gif
Size: 2051 bytes
Desc: no disponible
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20220211/c3c3c8cf/attachment-0001.gif>

------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: image002.png
Type: image/png
Size: 1298 bytes
Desc: no disponible
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20220211/c3c3c8cf/attachment-0005.png>

------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: image003.png
Type: image/png
Size: 1318 bytes
Desc: no disponible
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20220211/c3c3c8cf/attachment-0006.png>

------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: image004.png
Type: image/png
Size: 1193 bytes
Desc: no disponible
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20220211/c3c3c8cf/attachment-0007.png>

------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: image005.png
Type: image/png
Size: 1305 bytes
Desc: no disponible
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20220211/c3c3c8cf/attachment-0008.png>

------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: image006.png
Type: image/png
Size: 21076 bytes
Desc: no disponible
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20220211/c3c3c8cf/attachment-0009.png>

------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: image007.jpg
Type: image/jpeg
Size: 14174 bytes
Desc: no disponible
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20220211/c3c3c8cf/attachment-0002.jpg>

------------ próxima parte ------------
A non-text attachment was scrubbed...
Name: image008.jpg
Type: image/jpeg
Size: 5590 bytes
Desc: no disponible
URL: <https://stat.ethz.ch/pipermail/r-help-es/attachments/20220211/c3c3c8cf/attachment-0003.jpg>


Más información sobre la lista de distribución R-help-es