4 votos

Tratamiento de los valores atípicos en el ANOVA

Tengo una pregunta relacionada con el método correcto para tratar los valores atípicos univariantes cuando hay que realizar un ANOVA.

Empezando por un ejemplo, supongamos que tengo dos muestras de sujetos sometidos a pruebas sobre una serie de variables dependientes. Para cada variable dependiente realizo un ANOVA con el grupo como variable independiente. Supongamos ahora que he identificado una serie de valores atípicos univariantes para cada variable dependiente.

¿Debo eliminar primero todos los valores atípicos y luego realizar los distintos ANOVAs, o debo eliminar sólo los valores atípicos relativos a la variable dependiente específica para la que estoy realizando el ANOVA?

3voto

Patrick Puntos 183

"Me refiero a los valores atípicos identificados por el boxplot"

Se pueden perder muchos valores atípicos procediendo de esta manera: una observación puede ser atípica en la multivariante multivariante (diseño, dependiente) sin ser obviamente atípica en ninguna de las variables (de diseño/dependientes) tomadas de forma aislada.

El mejor procedimiento es simplemente utilizar una estimación que no se vea afectado por los valores atípicos. Robusto rutinas de anova/regresión están implementadas en la mayoría de software estadístico común. Por ejemplo, en R en el paquete robustbase.

A continuación, ilustro cómo los valores atípicos multivariantes pueden arruinar un modelo lineal sin destacar en ninguna de las variables (de diseño/dependientes) individualmente.

library(robustbase)
data(salinity)
library(MASS)

Xa<-mvrnorm(5,colMeans(salinity[,paste0("X",1:3)]),cov(salinity[,paste0("X",1:3)]))
Ya<-Xa%*%c(-2,0,2)+rnorm(5,0,1/5)-20
salinity2<-as.data.frame(cbind(c(salinity$X1,Xa[,1]),c(salinity$X2,Xa[,2]),c(salinity$X3,Xa[,3]),c(salinity$Y,Ya)))
colnames(salinity2)<-colnames(salinity)

Por construcción, estos 5 valores atípicos no serán visibles en los boxplots de las variables.

variable-wise boxplots

Sin embargo, si ejecuta un ANOVA sobre la salinidad2 obtendrá resultados completamente diferentes como un ANOVA ejecutado en la salinidad. Por otro lado, el ANOVA robusto da esencialmente los mismos resultados para la salinidad2 que para la salinidad:

m0r.sali<-lmrob(Y~.,data=salinity)
m0c.sali<-lm(Y~.,data=salinity)

m1r.sali<-lmrob(Y~.,data=salinity2)
m1c.sali<-lm(Y~.,data=salinity2)

summary(m1r.sali)$coef
summary(m0r.sali)$coef

summary(m1c.sali)$coef
summary(m0c.sali)$coef

Ici es un buen artículo de revisión reciente sobre estadísticas robustas.

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