[R-es] Detectar outliers en un gráfico de dispersión

Xavi de Blas xaviblas en gmail.com
Jue Dic 10 18:19:10 CET 2009


Hola amigos, esta es mi primera duda, espero que no sea demasiado fácil.

Tengo unos datos de dos variables y quiero mostrar recta de regresión
y valor de correlación

serie0 <- c(0.651, 0.712, 0.614, 0.645, 0.559, 0.647, 0.642, 0.534,
0.616, 0.621, 0.623)
serie1 <- c(0.572, 0.641, 0.565, 0.596, 0.518, 0.604, 0.602, 0.501,
0.58, 0.589, 0.596)
data <- cbind(serie0, serie1)
colnames(data) <- c('ABK', 'CMJ')
rownames(data) <- c('CV', 'JN', 'MM', 'AT', 'NS', 'JA', 'SR', 'PC',
'JS', 'CB', 'AG')
colors=gray.colors(length(rownames(data)))
rang <- c(1:length(rownames(data)))
plot(serie0, serie1, pch=rang, col='black', xlab='ABK', ylab='CMJ')
abline(lm(serie1 ~ serie0),col='grey30')
legend('bottomright' ,legend=rownames(data), pch=rang, col='black', cex=.7)
title(main='IUB (abk-cmj)/cmj *100 (XY)',
sub=paste('correlation:',cor(serie0,serie1)), cex.sub=0.75,
font.sub=3, col.sub='grey30')

¿cómo podría identificar de forma automatizada los datos atípicos
(outliers)?. Me gustaría poder:
-pintarlos de otro color
-excluirlos de la recta de regresión
-excluirlos de la correlación

me preocupa sólo la identificación, porque el resto de código ya puedo hacerlo.

he cargado el paquete outliers, pero con lo poco que lo conozco sólo
encuentro métodos que me devuelven un outlier y no varios (si los hay)

http://rss.acs.unt.edu/Rdoc/library/outliers/html/00Index.html

gracias, saludos



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