4 votos

R: ¿Cómo interpretar las cifras atípicas del QQplot?

Cómo interpretar las etiquetas con los números atípicos cuando se traza lo siguiente en R (QQplot)

set.seed(1)
y <- rnorm(100)
x <- rnorm(100)
plot(lm(y ~ x), which=2)   # which = 2 gives the plot

Da un número 61 en la parte superior. ¿Qué es?

Me imaginé que podría ser el índice de la pareja atípica. Parece estar conectado a una puntuación de alrededor de y = 3 y x = 3 . Pero cuando:

cbind(y,x)[61,]

>  y         x 
2.4016178 0.4251004 

¿Cómo leer estos números en el QQplot de R?

9voto

mehturt Puntos 13

El número en el gráfico corresponde a la índices de los residuos estandarizados y los datos originales. Por defecto, R etiqueta el tres residuos más extremos, aunque no se desvíen mucho de la línea QQ. Por tanto, el hecho de que los puntos estén etiquetados no significa que el ajuste sea malo ni nada por el estilo. Este comportamiento se puede cambiar especificando la opción id.n . Permítame ilustrar esto con su ejemplo

set.seed(1)
y <- rnorm(100)
x <- rnorm(100)
lm.mod <- lm(y ~ x) # linear regression model
plot(lm.mod, which=2) # QQ-Plot
lm.resid <- residuals(lm(y ~ x)) # save the residuals
sort(abs(lm.resid), decreasing=TRUE) # sort the absolute values of the residals
        14         61         24
2.32415869 2.29316200 2.09837122

Los tres primeros residuos más extremos son los números 14, 61 y 24. Estos son los números que aparecen en el gráfico. Estos índices corresponden a los índices de los datos originales. Así que los puntos de datos 14, 24 y 26 son los que provocan los residuos más extremos. También podemos marcarlos en un gráfico de dispersión (los puntos azules). Tenga en cuenta que como generó su y y x independientemente, la línea de regresión es simplemente la media de y sin ninguna pendiente:

# The original data points corresponding to the 3 most extreme residuals

cbind(x,y)[c(14, 24, 61), ]
             x         y
[1,] -0.6506964 -2.214700
[2,] -0.1795565 -1.989352
[3,]  0.4251004  2.401618

# Make a scatterplot of the original data and mark the three points
# and add the residuals

par(bg="white", cex=1.6)
plot(y~x, pch=16, las=1)
abline(lm.mod, lwd=2) # add regression line
pre <- predict(lm.mod)

# Add the residual lines
segments(x[c(14, 24, 61)], y[c(14, 24, 61)], x[c(14, 24, 61)], 
         pre[c(14, 24, 61)], col="red", lwd=2)

# Add the points
points(x[c(14, 24, 61)], y[c(14, 24, 61)], pch=16, cex=1.1, col="steelblue", las=1)

Residuals

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