set.seed(111)
x = c(runif(10, 1, 10), 15)
y = c(rnorm(10, 2*x,1),95)
par(mfrow = c(1,2))
plot(x,y, ylim = c(0,100), xlim = c(0,15), pch = 19 )
abline(lm(y~x), col = "red")
plot(x[-11], y [-11], ylim = c(0,100), xlim = c(0,15), pch = 19 ) # "pch" Este argumento especifica el tipo de símbolo que se utilizará para representar los puntos en el gráfico. El valor 19 indica que se usarán círculos sólidos para los puntos
abline(lm(y[-11]~x[-11]), col = "red")
Se observa que la observación “11” en la gráfica es un outlier, porque afecta al eje “y”, tambien es un leverage, porque está alejado a las observaciones del eje “x”, tambien es un valor influencial, ya que al quitar esa observación la pendiente tiene un mejor comportamiento con las otras observaciones, generando así un mejor analisis con nuestras estimaciones.
También podemos hacer un análisis comparativo, por ejemplo:
lm(y~x)|> summary()|> coefficients()
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -20.187460 6.1811934 -3.265949 9.745617e-03
## x 6.636147 0.9390542 7.066842 5.876345e-05
lm(y[-11]~x[-11])|>summary()|> coefficients()
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 0.2976321 0.8758306 0.3398284 7.427357e-01
## x[-11] 1.9071525 0.1746075 10.9225128 4.376295e-06
Como se puede observar al quitar la observación “11”, altera significativamente nuestros resultados, ya que al quitar esa observación reducimos el CME y nuestros pvalores se hacen más pequeños; tambien cabe recalcar que nuestras estimaciones se reducen quitando dicha observación.
set.seed(111)
x = c(runif(10,1,100),40)
y = c(rnorm(10,3+0.005*x,1), 10)
par(mfrow=c(1,2))
plot(x,y, ylim = c(0,12), pch = 19); abline(lm(y~x), col = "red")
plot(x[-11], y [-11], ylim = c(0,12), pch = 19 ); abline(lm(y[-11]~x[-11]), col = "red")
Se observa que el punto es un outlier ya que se aleja del patron de 2 a 6, no es leverage, porque la observacion esta entre 0 y 70 de los “x” y es no influencial, porque no afecta la pendiente.
También podemos hacer un análisis comparativo, por ejemplo:
lm(y~x)|> summary()|> coefficients()
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.923421819 1.69893046 2.3093481 0.04628586
## x -0.005400893 0.03732823 -0.1446866 0.88814662
lm(y[-11]~x[-11])|>summary()|> coefficients()
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.213225229 0.73062613 4.3979063 0.002293165
## x[-11] -0.003440685 0.01587341 -0.2167578 0.833822596
Se observa que los valores son parecidos en resultados, por ello no es influencial.
Como se puede observar no es tan fácil ver ello y más aún si se tratase de una regresion lineal múltiple, por ello usaremos los residuales para analizar si es influencial, outlier y leverage.
\[\mathbf{Y = X\beta + \epsilon}\]
x = c(3,5,10,4,7,6,8,6,5,21,6.5,10.7)
y = c(7,11,17,8.5,12,12.8,16,60,11.2,20,16,19.9)
library(dplyr)
library(ggplot2)
data.frame(x,y) |> ggplot(aes(x=x,y=y))+ geom_point()+theme_minimal()
modelo<-lm(y~x)
Se observa que en la observacion 8(outlier) y 10(leverage), los residuales tienen la misma escala que “y”.
Cuando se cumple normalidad se usa los residuos estandarizados, se define como:
\[r_{i} = \frac{\varepsilon_{i} }{\hat{\sigma}\sqrt{1-h_{ii}}}\] donde :
La media de un residual estandarizado es 0 y 1. Además asumimos normalidad valores por encima de 2, o por debajo de -2 son consideradas outliers, eso es así, porque si recordamos una grafica de una normal estandar el 95% del área es en el punto -1.96 y 1.96, por ende se redondea a 2, he de ahi el argumento.
Podemos comprobar la fórmula de manera tradicional.
Usaremos la data mtcars de R.
datos<- mtcars
attach(datos)
modelo1<- lm(mpg~cyl + disp + hp + drat + wt + qsec + gear
+ carb, datos)
e<- modelo1$residuals
sig<- summary(modelo1)$sigma
hii<- hatvalues(modelo1)
(ri<- e/(sig*sqrt(1-hii)))
## Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive
## -0.452063067 -0.139772370 -1.181095608 0.082017820
## Hornet Sportabout Valiant Duster 360 Merc 240D
## 0.310818933 -0.822225291 -0.279907309 0.323569593
## Merc 230 Merc 280 Merc 280C Merc 450SE
## -1.214425349 -0.192684648 -0.934905680 1.013499364
## Merc 450SL Merc 450SLC Cadillac Fleetwood Lincoln Continental
## 0.709618264 -0.181116789 -0.499135681 -0.002231653
## Chrysler Imperial Fiat 128 Honda Civic Toyota Corolla
## 2.056490146 2.207157323 0.386658964 2.174312185
## Toyota Corona Dodge Challenger AMC Javelin Camaro Z28
## -1.401144710 -0.697452382 -1.142286276 -0.363063352
## Pontiac Firebird Fiat X1-9 Porsche 914-2 Lotus Europa
## 1.010532072 -0.158774701 -0.499366264 1.087308871
## Ford Pantera L Ferrari Dino Maserati Bora Volvo 142E
## -1.943991207 -0.039804869 0.973908650 -0.974727917
Usando la funcion de Rstandar:
ri<- rstandard(modelo1)
Se comprueba de manera tradicional la fórmula, pero usaremos la función rstandar(), porque es más eficiente.
De haber outliers, los residuales estandarizados podrían no ser
normales. Ante ello, se propone redefinir la expresión para la
estimación del CME, retirando la i-ésima observación. Así, si no se
cumple la normalidad, se usa los residuos estudentizados, se define
como:
\[ t_{i} = \frac{\varepsilon_{i}
}{\hat{\sigma_{i}}\sqrt{1-h_{ii}}}\] \(\hat{\sigma_{i}}\) error estandar al
retirar la i-ésima observación.
Al usar los residuos estudentizados tendremos que hallarlo observación
por observación de la siguiente manera.
modelo2<- lm(mpg[-1]~cyl[-1] + disp[-1] + hp[-1] + drat[-1] + wt[-1] + qsec[-1] + gear[-1]+ carb[-1], datos)
summary(modelo2)$sigma -> sig_1
(t1<- e[1]/(sig_1*sqrt(1-hii[1])))
## Mazda RX4
## -0.4441038
modelo3<- lm(mpg[-2]~cyl[-2] + disp[-2] + hp[-2] + drat[-2] + wt[-2] + qsec[-2] + gear[-2]+ carb[-2], datos)
summary(modelo3)$sigma -> sig_2
(t2<- e[2]/(sig_1*sqrt(1-hii[2])))
## Mazda RX4 Wag
## -0.1373115
Y así sucesivamente para las “k” observaciones, podemos usar la funcion rstudent de manera más eficiente.
(ti<- rstudent(modelo1))
## Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive
## -0.44410379 -0.13675817 -1.19184321 0.08022674
## Hornet Sportabout Valiant Duster 360 Merc 240D
## 0.30462736 -0.81623778 -0.27422221 0.31718004
## Merc 230 Merc 280 Merc 280C Merc 450SE
## -1.22774693 -0.18860159 -0.93224092 1.01412603
## Merc 450SL Merc 450SLC Cadillac Fleetwood Lincoln Continental
## 0.70174481 -0.17726217 -0.49082990 -0.00218260
## Chrysler Imperial Fiat 128 Honda Civic Toyota Corolla
## 2.22636324 2.43144369 0.37939501 2.38580993
## Toyota Corona Dodge Challenger AMC Javelin Camaro Z28
## -1.43286264 -0.68945165 -1.15028286 -0.35610486
## Pontiac Firebird Fiat X1-9 Porsche 914-2 Lotus Europa
## 1.01101874 -0.15536989 -0.49105913 1.09184049
## Ford Pantera L Ferrari Dino Maserati Bora Volvo 142E
## -2.07978670 -0.03893127 0.97277069 -0.97362424
Se puede establecer las siguientes condiciones:
Cómo se puede observar en la condicion siempre usan mayor a dos esto se debe a lo que antes se había mencionado, considerando la gráfica de la normal estandar se considera aceptable el 95% del área, lo cual es el punto -1.96 y 1.96 por ser simétrico, por ello se redondea a 2, entonces si es mayor a dos se consideraría outlier o influencial según sea el residuo que se desea considerar.
Ejemplo:
Usando los residuos estudentizados.
(influ_1<- which(abs(ti)>2))
## Chrysler Imperial Fiat 128 Toyota Corolla Ford Pantera L
## 17 18 20 29
Usando los residuos estandarizados.
(influ_2<- which(abs(ri)>2))
## Chrysler Imperial Fiat 128 Toyota Corolla
## 17 18 20
Como se puede observar la observación 17 está coincidiendo en ambos casos, usando residuos estandarizados y estudentizados.
sabemos que:
\[\hat{y}= X\hat{\beta} = X(X'X)^{-1}X'y = Hy\] Es decir:
\[\hat{y_{i}} = h_{i1}y_{1}+h_{i2}y_{2}+h_{i3}y_{3}+...+h_{ii}y_{i}+...+h_{in}y_{n}\] El valor de hii es conocido como la diagonal de la matriz H y también como \(\mathbf{leverage}\) de la i-ésima observación y mide la influencia de \(y_{i}\) en la estimación \(\hat{y_{i}}\). Geométricamente es la distancia estandarizada de la i-ésima observación al centroide del espacio X, es decir, si hay un punto alejado a las demás observaciones, hii medirá la distancia de ese punto al centroide de los demás, para así saber la distancia de ese punto que es leverage.
Entonces se considera un leverage si:
Usando la diagonal de la matriz sombrero(hii) para sospechar de un valor influencial.
q <-length(modelo1$coefficients)
n <- nrow(datos)
(influ_3<- which(abs(hii)> 2*(q/n)))
## Merc 230 Ford Pantera L Maserati Bora
## 9 29 31
hii> 2*(q/n)
## Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive
## FALSE FALSE FALSE FALSE
## Hornet Sportabout Valiant Duster 360 Merc 240D
## FALSE FALSE FALSE FALSE
## Merc 230 Merc 280 Merc 280C Merc 450SE
## TRUE FALSE FALSE FALSE
## Merc 450SL Merc 450SLC Cadillac Fleetwood Lincoln Continental
## FALSE FALSE FALSE FALSE
## Chrysler Imperial Fiat 128 Honda Civic Toyota Corolla
## FALSE FALSE FALSE FALSE
## Toyota Corona Dodge Challenger AMC Javelin Camaro Z28
## FALSE FALSE FALSE FALSE
## Pontiac Firebird Fiat X1-9 Porsche 914-2 Lotus Europa
## FALSE FALSE FALSE FALSE
## Ford Pantera L Ferrari Dino Maserati Bora Volvo 142E
## TRUE FALSE TRUE FALSE
La observación 9 está siendo considerada como un leverage, no necesariamente se tiene que eliminar, pero sí hay que ver si esa observación tiene un error, ya que el leverage indica que el valor de X es discordante con otras observaciones.
¿Todo leverage son outlier?
data.frame(leverage = hii > 2*(q/n),
outlier = as.logical(abs(ti>2)))
## leverage outlier
## Mazda RX4 FALSE FALSE
## Mazda RX4 Wag FALSE FALSE
## Datsun 710 FALSE FALSE
## Hornet 4 Drive FALSE FALSE
## Hornet Sportabout FALSE FALSE
## Valiant FALSE FALSE
## Duster 360 FALSE FALSE
## Merc 240D FALSE FALSE
## Merc 230 TRUE FALSE
## Merc 280 FALSE FALSE
## Merc 280C FALSE FALSE
## Merc 450SE FALSE FALSE
## Merc 450SL FALSE FALSE
## Merc 450SLC FALSE FALSE
## Cadillac Fleetwood FALSE FALSE
## Lincoln Continental FALSE FALSE
## Chrysler Imperial FALSE TRUE
## Fiat 128 FALSE TRUE
## Honda Civic FALSE FALSE
## Toyota Corolla FALSE TRUE
## Toyota Corona FALSE FALSE
## Dodge Challenger FALSE FALSE
## AMC Javelin FALSE FALSE
## Camaro Z28 FALSE FALSE
## Pontiac Firebird FALSE FALSE
## Fiat X1-9 FALSE FALSE
## Porsche 914-2 FALSE FALSE
## Lotus Europa FALSE FALSE
## Ford Pantera L TRUE FALSE
## Ferrari Dino FALSE FALSE
## Maserati Bora TRUE FALSE
## Volvo 142E FALSE FALSE
plot(modelo1, which = 5)
abline(h = 2, col = "blue", lty = 1)
abline(v=2*(q/n), col = "red", lty = 1)
library(olsrr)
ols_plot_resid_lev(modelo1)
Si trazamos el punto de corte en 2*(q/n) que sale 0.5625 en el eje x, todos aquellos que esten a la derecha de esa recta son leverage(Merc 230 y Ford Pantera L ), en el eje “y” se había mencionado aquellos puntos que se encuente entre -2 y 2 no se considerarán outlier, pero los que estén fuera sí(observación 17 Chrysler Imperial).
Mide la influencia de cada observación en los coeficientes de regresión estimados (\(\beta\))
\[D_{i} = \frac{(\hat{\beta_{i}} - \hat{\beta})' X' X (\hat{\beta_{i}} - \hat{\beta})}{q \hat{\sigma}^{2}} = \frac{r_i^{2}h_{ii}}{q(1-h_{ii})}\] donde \(\hat{\beta_{i}}\) es el valor estimado del vector de coeficientes \(\beta\) al no ser cosniderada la i-ésima observación, \(r_{i}\) es el i-ésimo residual estandarizado, \(h_{ii}\) es el i-ésimo leverage y q es el número de coeficientes estimados de regresión.
De manera tradicional usando los residuales estandarizados
(D_i <- ((ri**2)*hii)/(q*(1-hii)))
## Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive
## 7.665955e-03 5.339553e-04 3.643775e-02 1.359867e-04
## Hornet Sportabout Valiant Duster 360 Merc 240D
## 2.514595e-03 2.271531e-02 3.721284e-03 3.008345e-03
## Merc 230 Merc 280 Merc 280C Merc 450SE
## 2.277634e-01 9.499107e-04 2.563824e-02 4.733884e-02
## Merc 450SL Merc 450SLC Cadillac Fleetwood Lincoln Continental
## 1.164025e-02 8.486162e-04 1.448542e-02 2.178286e-07
## Chrysler Imperial Fiat 128 Honda Civic Toyota Corolla
## 1.988254e-01 7.128721e-02 1.570000e-02 1.062426e-01
## Toyota Corona Dodge Challenger AMC Javelin Camaro Z28
## 1.199840e-01 1.480824e-02 2.892918e-02 7.966984e-03
## Pontiac Firebird Fiat X1-9 Porsche 914-2 Lotus Europa
## 2.895823e-02 3.232951e-04 1.334906e-02 7.599700e-02
## Ford Pantera L Ferrari Dino Maserati Bora Volvo 142E
## 7.738944e-01 1.055753e-04 1.674225e-01 3.144335e-02
De manera directa:
(D1<-cooks.distance(modelo1))
## Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive
## 7.665955e-03 5.339553e-04 3.643775e-02 1.359867e-04
## Hornet Sportabout Valiant Duster 360 Merc 240D
## 2.514595e-03 2.271531e-02 3.721284e-03 3.008345e-03
## Merc 230 Merc 280 Merc 280C Merc 450SE
## 2.277634e-01 9.499107e-04 2.563824e-02 4.733884e-02
## Merc 450SL Merc 450SLC Cadillac Fleetwood Lincoln Continental
## 1.164025e-02 8.486162e-04 1.448542e-02 2.178286e-07
## Chrysler Imperial Fiat 128 Honda Civic Toyota Corolla
## 1.988254e-01 7.128721e-02 1.570000e-02 1.062426e-01
## Toyota Corona Dodge Challenger AMC Javelin Camaro Z28
## 1.199840e-01 1.480824e-02 2.892918e-02 7.966984e-03
## Pontiac Firebird Fiat X1-9 Porsche 914-2 Lotus Europa
## 2.895823e-02 3.232951e-04 1.334906e-02 7.599700e-02
## Ford Pantera L Ferrari Dino Maserati Bora Volvo 142E
## 7.738944e-01 1.055753e-04 1.674225e-01 3.144335e-02
Con gráfica:
plot(modelo1, which = 4)
ols_plot_cooksd_bar(modelo1)
ols_plot_cooksd_chart(modelo1)
Como se observa la observación “Ford Pantera L” tiene una mayor distancia hacia lo demás podemos usar la funcion which.max.
which.max(D1)
## Ford Pantera L
## 29
Apliquemos la regla para un \(\alpha\) = 0.5
qf(0.5,q,n-q)
## [1] 0.9545933
Si \(D_{i}\) \(\geq\) 0.9545, \(\hat{\beta}\) se moverá al menos un 50% hacia el borde de la región de confianza, al retirar la i-ésima observación.
D1 > qf(0.5,q,n-q)
## Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive
## FALSE FALSE FALSE FALSE
## Hornet Sportabout Valiant Duster 360 Merc 240D
## FALSE FALSE FALSE FALSE
## Merc 230 Merc 280 Merc 280C Merc 450SE
## FALSE FALSE FALSE FALSE
## Merc 450SL Merc 450SLC Cadillac Fleetwood Lincoln Continental
## FALSE FALSE FALSE FALSE
## Chrysler Imperial Fiat 128 Honda Civic Toyota Corolla
## FALSE FALSE FALSE FALSE
## Toyota Corona Dodge Challenger AMC Javelin Camaro Z28
## FALSE FALSE FALSE FALSE
## Pontiac Firebird Fiat X1-9 Porsche 914-2 Lotus Europa
## FALSE FALSE FALSE FALSE
## Ford Pantera L Ferrari Dino Maserati Bora Volvo 142E
## FALSE FALSE FALSE FALSE
Ninguna observación es influyente a un alfa de 0.5
Ahora probemos a un \(\alpha\) = 0.1
qf(0.1,q,n-q)
## [1] 0.4382984
Si \(D_{i}\) \(\geq\) 0.4383, \(\hat{\beta}\) se moverá al menos un 10% hacia el borde de la región de confianza, al retirar la i-ésima observación.
D1 > qf(0.1,q,n-q)
## Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive
## FALSE FALSE FALSE FALSE
## Hornet Sportabout Valiant Duster 360 Merc 240D
## FALSE FALSE FALSE FALSE
## Merc 230 Merc 280 Merc 280C Merc 450SE
## FALSE FALSE FALSE FALSE
## Merc 450SL Merc 450SLC Cadillac Fleetwood Lincoln Continental
## FALSE FALSE FALSE FALSE
## Chrysler Imperial Fiat 128 Honda Civic Toyota Corolla
## FALSE FALSE FALSE FALSE
## Toyota Corona Dodge Challenger AMC Javelin Camaro Z28
## FALSE FALSE FALSE FALSE
## Pontiac Firebird Fiat X1-9 Porsche 914-2 Lotus Europa
## FALSE FALSE FALSE FALSE
## Ford Pantera L Ferrari Dino Maserati Bora Volvo 142E
## TRUE FALSE FALSE FALSE
Haciendo el proceso inverso: Sabemos que \(D_{2}\) = 0.7738944 , ¿Qué porcentaje mínimo de variación tendría \(\hat{\beta}\) en la región de confianza si retiramos la observación 8?
pf(0.7738944,q,n-q) # pf(D,k,n-k)
## [1] 0.3584714
Es decir si retiramos la observación Ford Pantera L se moverá como mínimo 0.3584714 el \(\hat{\beta}\).
library(car)
modelo1$coefficients
## (Intercept) cyl disp hp drat wt
## 17.88963741 -0.41459575 0.01293240 -0.02084886 1.10109551 -3.92064847
## qsec gear carb
## 0.54145693 1.23321026 -0.25509911
modelo_sin_obs17 <- lm(mpg[-17]~cyl[-17] + disp[-17] + hp[-17] + drat[-17] + wt[-17] + qsec[-17] + gear[-17]+ carb[-17], datos); modelo_sin_obs17$coef
## (Intercept) cyl[-17] disp[-17] hp[-17] drat[-17] wt[-17]
## 15.97284531 -0.04931798 0.01639973 -0.02580981 0.52266890 -5.33638890
## qsec[-17] gear[-17] carb[-17]
## 0.80782695 1.36914331 0.01613740
modelo_sin_obs29 <- lm(mpg[-29]~cyl[-29] + disp[-29] + hp[-29] + drat[-29] + wt[-29] + qsec[-29] + gear[-29]+ carb[-29], datos); modelo_sin_obs29$coef
## (Intercept) cyl[-29] disp[-29] hp[-29] drat[-29] wt[-29]
## -7.272136807 0.656765138 0.012352111 -0.008395939 2.915707778 -3.504446844
## qsec[-29] gear[-29] carb[-29]
## 0.772189884 3.412753768 -1.290565162
par(mfrow = c(2,2))
modelo1|> confidenceEllipse(levels = 0.9); modelo_sin_obs17 |> confidenceEllipse(levels = 0.9)
modelo1|> confidenceEllipse(levels = 0.9); modelo_sin_obs29 |> confidenceEllipse(levels = 0.9)
De manera similar a la distancia de Cook, permite evaluar cuánto cambia el j-ésimo coeficiente de regresión si se elimina la i-ésima observación. Se tiene que: \[\hat{\beta}- \hat{\beta_{i}} = \frac{(X'X)^{-1}x_{i}\varepsilon_{i}}{1-h_{ii}}\]
dónde \(\hat{\beta}\) es la
estimación de \(\beta\) en el conjunto
de datos completo y \(\hat{\beta_{i}}\)
cuando se elimina la i-ésima observación ¿Cuál es el efecto de los
leverages y los residuales en la variación de \(\hat{\beta}\) al eliminar la i-ésima
observación?.
Ahora, escalamos:
\[DFBETAS_{i,j} = \frac{\hat{\beta_{j}}- \hat{\beta_{j(i)}}}{\sqrt{\hat{\sigma^{2}_{i}}C_{jj}}}\] dónde \(\hat{\beta_{j}}\) es la estimación de \(\beta_{j}\) en el conjunto de datos completo y \(\hat{\beta_{j(i)}}\) cuando se elimina la i-ésima observación, \(\hat{\sigma^{2}_{i}}\) es el \(\mathbf{CME}\) al eliminar la i-ésima observación, y \(C_{jj}\) es el la j-ésimo elemento de la diagonal de \((X'X)^{-1}\). Así, DFBETAS es una matriz de dimensión n x q
\(\textbf{Regla sugerida}\)
Si un punto es un valor influencial, entonces:
\[\left| DFBETAS_{i,j}\right| > \frac{2}{\sqrt{n}}\]
beta<- modelo1$coefficients
beta_sin<- modelo2$coefficients
(beta - beta_sin)
## (Intercept) cyl disp hp drat wt
## -1.487088568 0.004490679 -0.001139736 0.003799102 0.013078504 0.130122539
## qsec gear carb
## 0.034968768 0.108387796 -0.130616601
Es decir el \(\hat{\beta_{0}}\) - \(\hat{\beta_{0(1)}}\) = -1.4870, \(\hat{\beta_{0(1)}}\) = \(\hat{\beta_{0}}\) + 1.4870.El \(\hat{\beta_{0}}\) aumenta en 1.4870 al quitar la primera observación. Pero no se sabe cual es el máximo o mínimo para poder decir si es influyente o no, por ello surge el DFBETAS.
summary(modelo2)$sigma**2 -> cme_sin #es el CME al quitar la primera observación
model.matrix(modelo1)-> X
solve(t(X)%*%X)-> C
beta<- modelo1$coefficients
beta_sin<- modelo2$coefficients
(beta -beta_sin)/sqrt(cme_sin*diag(C))
## (Intercept) cyl disp hp drat wt
## -0.081981453 0.004606692 -0.063695760 0.180106925 0.008039895 0.068662299
## qsec gear carb
## 0.055299748 0.075927869 -0.157323170
#Obtenemos el DFBETAS para la primera observación
Usando la funcion:
(Dfbetas<-dfbetas(modelo1))
## (Intercept) cyl disp hp
## Mazda RX4 -0.0819814529 0.0046066919 -0.0636957602 0.1801069252
## Mazda RX4 Wag -0.0114797294 -0.0089022750 -0.0047433137 0.0457978113
## Datsun 710 -0.2470390181 0.2156318220 0.2417466554 -0.2760181788
## Hornet 4 Drive 0.0037366336 -0.0059894802 0.0159974078 -0.0058333240
## Hornet Sportabout -0.0161492915 0.0299981087 0.0766744123 -0.0367812264
## Valiant -0.0174354218 -0.0261285449 0.0585917914 -0.0383418035
## Duster 360 -0.0714129200 0.0804206074 -0.0574908844 -0.0475032704
## Merc 240D 0.0298515092 -0.0582987381 0.0217655766 -0.0607917182
## Merc 230 1.0112599992 -0.2721250179 -0.2838312570 -0.2260348525
## Merc 280 0.0272986876 -0.0392119928 0.0366552492 0.0231046785
## Merc 280C 0.2530884093 -0.2565175797 0.1278956377 0.1147793895
## Merc 450SE 0.0062469322 0.2790231611 -0.5579036592 0.2178952211
## Merc 450SL -0.0442507284 0.1789484244 -0.1964192447 0.0883792128
## Merc 450SLC 0.0251139879 -0.0537154854 0.0486450485 -0.0245961678
## Cadillac Fleetwood -0.0144309663 0.1321386204 -0.2183562075 0.1482081137
## Lincoln Continental -0.0001154384 0.0004943262 -0.0003158191 0.0002228187
## Chrysler Imperial 0.1164495256 -0.4129375017 -0.2135430503 0.2591779981
## Fiat 128 -0.0917167859 0.1257462648 -0.3637773638 0.2247453982
## Honda Civic -0.0582974910 0.0178605329 0.1532483357 -0.1313579147
## Toyota Corolla -0.4760985907 0.3055335875 0.1177645050 0.1101658247
## Toyota Corona -0.4664405162 0.6121091282 0.0417983619 -0.4961391776
## Dodge Challenger -0.0905872171 -0.0855659297 -0.0130322928 0.1280897599
## AMC Javelin 0.1031868735 -0.3262206129 0.0233599812 0.1406331940
## Camaro Z28 -0.0736312040 0.0622862500 0.0516736864 -0.1144585220
## Pontiac Firebird -0.0105530676 0.0130909777 0.3123793087 -0.1955028838
## Fiat X1-9 -0.0082042375 0.0034165522 0.0067250202 -0.0054525199
## Porsche 914-2 -0.0660525040 0.0523189445 0.0195722937 0.0473010506
## Lotus Europa 0.2993357415 -0.2818562858 0.1674868502 0.0363218326
## Ford Pantera L 1.5106334000 -1.1968837812 0.0353175838 -0.6429242962
## Ferrari Dino -0.0102551367 0.0046753711 0.0007923697 0.0076338438
## Maserati Bora -0.1208531168 -0.1306135638 0.0491750203 0.4844789470
## Volvo 142E -0.1972114390 0.2400724885 0.2531846552 -0.2546831209
## drat wt qsec gear
## Mazda RX4 8.039895e-03 0.0686622994 0.0552997484 7.592787e-02
## Mazda RX4 Wag -4.687313e-03 0.0047323579 0.0125103191 1.203781e-02
## Datsun 710 9.821317e-02 -0.2592214473 0.2839631867 -8.809426e-03
## Hornet 4 Drive -1.628150e-02 -0.0166256758 0.0102954390 -1.569116e-03
## Hornet Sportabout -4.538372e-03 -0.0839868054 0.0380738377 5.948443e-04
## Valiant 2.886343e-01 -0.0010848323 -0.0917623598 -1.003137e-01
## Duster 360 2.099418e-02 0.0905987010 0.0018506414 1.214427e-01
## Merc 240D -4.904707e-02 0.0379566984 -0.0211198789 3.581011e-02
## Merc 230 -1.685835e-01 0.3770306844 -1.2236910057 -3.789388e-01
## Merc 280 -3.124802e-02 -0.0379495266 -0.0010900754 -1.242770e-02
## Merc 280C -1.707003e-01 -0.1021167750 -0.1544525463 -9.455385e-02
## Merc 450SE 4.235420e-02 0.4462265254 -0.2085851714 3.864321e-02
## Merc 450SL -4.173562e-03 0.0775322248 0.0131756346 -8.729286e-03
## Merc 450SLC -2.008440e-03 -0.0157530417 -0.0178866378 -3.366758e-03
## Cadillac Fleetwood 4.630845e-02 0.0564769977 -0.0359674990 -1.992582e-03
## Lincoln Continental -3.896695e-06 -0.0003755456 0.0001985506 -3.742898e-05
## Chrysler Imperial 3.918542e-01 0.8232531182 -0.4642074430 -1.049373e-01
## Fiat 128 1.909420e-01 0.2904912076 -0.0566498831 1.327450e-01
## Honda Civic 2.241610e-01 -0.1642599268 0.0760612747 -1.475361e-01
## Toyota Corolla 3.286248e-01 -0.4007149803 0.5809067462 2.430694e-02
## Toyota Corona 9.041723e-02 0.1575766872 0.0669626622 7.687965e-01
## Dodge Challenger 1.778236e-01 0.0367792261 0.0667881544 -6.297895e-02
## AMC Javelin -2.304993e-02 0.0624354840 -0.0493147226 -8.230822e-02
## Camaro Z28 -1.268033e-01 -0.0386160242 0.0954830050 1.712279e-01
## Pontiac Firebird -3.661761e-02 -0.2083485773 0.0521352927 5.923346e-02
## Fiat X1-9 -4.214334e-03 -0.0003841059 0.0073900650 3.264483e-03
## Porsche 914-2 -4.107154e-02 -0.1364716209 0.1833740343 -1.372805e-01
## Lotus Europa -5.187010e-01 -0.1907563710 -0.1325642969 2.585768e-01
## Ford Pantera L -1.214829e+00 -0.2391710599 -0.3973667272 -1.662744e+00
## Ferrari Dino 1.618053e-02 0.0014844636 0.0060925239 -3.368676e-03
## Maserati Bora -2.763340e-01 -0.3291181165 0.3534279285 4.150702e-02
## Volvo 142E -9.252309e-02 -0.3294717990 0.2848407731 1.070941e-01
## carb
## Mazda RX4 -1.573232e-01
## Mazda RX4 Wag -3.379862e-02
## Datsun 710 3.311717e-01
## Hornet 4 Drive 6.984099e-03
## Hornet Sportabout 1.852426e-02
## Valiant 6.620926e-02
## Duster 360 -7.196921e-02
## Merc 240D 1.861728e-02
## Merc 230 -2.123024e-01
## Merc 280 -3.002916e-03
## Merc 280C -6.505924e-02
## Merc 450SE -3.786957e-01
## Merc 450SL -9.677199e-02
## Merc 450SLC 2.342789e-02
## Cadillac Fleetwood -1.463444e-01
## Lincoln Continental -9.403904e-05
## Chrysler Imperial -3.600198e-01
## Fiat 128 -4.369230e-01
## Honda Civic 1.609536e-01
## Toyota Corolla 8.767148e-03
## Toyota Corona -1.326587e-01
## Dodge Challenger 2.781911e-02
## AMC Javelin 8.706551e-02
## Camaro Z28 2.661202e-02
## Pontiac Firebird 4.562492e-02
## Fiat X1-9 1.286382e-02
## Porsche 914-2 1.417017e-01
## Lotus Europa -3.696239e-02
## Ford Pantera L 1.358217e+00
## Ferrari Dino -1.195888e-02
## Maserati Bora 3.530185e-01
## Volvo 142E 2.359636e-01
Verificando las observaciones que tienen DFBETAS alto:
(Dfbetas[,1]> 2/sqrt(n))
## Mazda RX4 Mazda RX4 Wag Datsun 710 Hornet 4 Drive
## FALSE FALSE FALSE FALSE
## Hornet Sportabout Valiant Duster 360 Merc 240D
## FALSE FALSE FALSE FALSE
## Merc 230 Merc 280 Merc 280C Merc 450SE
## TRUE FALSE FALSE FALSE
## Merc 450SL Merc 450SLC Cadillac Fleetwood Lincoln Continental
## FALSE FALSE FALSE FALSE
## Chrysler Imperial Fiat 128 Honda Civic Toyota Corolla
## FALSE FALSE FALSE FALSE
## Toyota Corona Dodge Challenger AMC Javelin Camaro Z28
## FALSE FALSE FALSE FALSE
## Pontiac Firebird Fiat X1-9 Porsche 914-2 Lotus Europa
## FALSE FALSE FALSE FALSE
## Ford Pantera L Ferrari Dino Maserati Bora Volvo 142E
## TRUE FALSE FALSE FALSE
(D1<-which(abs(Dfbetas[,1])>2/sqrt(n)))
## Merc 230 Toyota Corolla Toyota Corona Ford Pantera L
## 9 20 21 29
Se observa que Ford Pantera L (29) sigue saliendo como influyente, por lo tanto Ford Pantera L (29) es un valor influyente.
ols_plot_dfbetas(modelo1)
¿Qué sucede con el valor de \(\hat{y_{i}}\) si se elimina la i-ésima observación?
\[DFFITS_{i} = \frac{\hat{y}_{i} -
\hat{y}_{(i)}}{\sqrt{\hat{\sigma}_{(i)}^{2} h_{ii}}} =
t_{i}\sqrt{\frac{h_{ii}}{1-h_{ii}}}\] donde \(\hat{y}_{i}\) es el valor ajustado para la
i-ésima observación en el modelo con datos completos y \(\hat{y}_{(i)}\) cuando se omite la i-ésima
observación, \(\hat{\sigma}_{(i)}^{2}\)
es el CME en el modelo sin la i-ésima observación y \(h_{ii}\) es el i-ésimo valor de la diagonal
de la matriz hat de los datos completos.
Puede interpretarse como el número de desviaciones estándar que \(\hat{y}_{i}\) cambia si la i-ésima
observación es removida.
Si un punto es un valor influencial, entonces:
\[\left|DFFITS_{i} \right| > 2\sqrt{\frac{q}{n}}\]
En resumen los DFFITS miden el cambio en las predicciones del modelo
al eliminar una observación específica. Si \(\left|DFFITS_{i} \right|>
2\sqrt{\frac{q}{n}}\), es necesario examinar la i-ésima
observación Un DFFFiTS positivo significa que la observación aumenta el
valor en la predicción, mientras que un DFFITS negativo significa que la
observación disminuye el valor en la predicción.
En R:
dffit<-dffits(modelo1)
which(abs(dffit)> 2*sqrt(q/n))
## Merc 230 Chrysler Imperial Toyota Corolla Toyota Corona
## 9 17 20 21
## Ford Pantera L Maserati Bora
## 29 31
Las observaciones 9, 17, 20, 21, 29 y 31 son consideradas valores influenciales.
ols_plot_dffits(modelo1)
EL indicador COVRATIO (covariance ratio) mide el efecto de la i-ésima observación en la precisión de los estimadores. La varianza generalizada es una medida de dispersión de un vector, así, la VG(varianza generalizada) de \(\hat{\beta}\) es \(\left|\hat{\sigma ^{2}(X'X)^{-1}} \right|\) Esta medida se utiliza para definir el COVRATIO:
\[COVRATIO_{i} = \frac{\left|\hat{\sigma}_{(i)}^{2} (X_{(i)}'X_{(i)})\right|}{\left|\hat{\sigma}^{2} (X'X)^{-1}\right|} = (\frac{\hat{\sigma_{(i)}^{2}}}{\hat{\sigma ^{2}}})^{q}(\frac{1}{1-h_{ii}})\] ¿Qué sucede si COVRATIO > 1? ¿Y si es menor a 1? ¿Qué papel cumplen los leverages en los COVRATIOs?
\[\left|COVRATIO_{i}\right| > 1 + 3\frac{q}{n} \vee \left| COVRATIO_{i}\right|< 1-3\frac{q}{n}\]
Evaluamos para la primera observación:
(summary(modelo1)$sigma**2 -> cme)
## [1] 6.874941
((cme_sin/cme)**q*(1/(1-hii[1]))->cov_rat_1)
## Mazda RX4
## 1.841578
Usando para las q observaciones
covratio(modelo1)-> cov_rat
Verificando si hay observaciones con alto COVRATIO
which(abs(cov_rat)>1+3*(q/n))
## Mazda RX4 Wag Duster 360 Merc 230 Cadillac Fleetwood
## 2 7 9 15
## Lincoln Continental Honda Civic Camaro Z28 Porsche 914-2
## 16 19 24 27
## Ferrari Dino Maserati Bora
## 30 31
which(abs(cov_rat)<1-3*(q/n))
## named integer(0)
Resumen proporcionado por R:
modelo1|> influence.measures()
## Influence measures of
## lm(formula = mpg ~ cyl + disp + hp + drat + wt + qsec + gear + carb, data = datos) :
##
## dfb.1_ dfb.cyl dfb.disp dfb.hp dfb.drat dfb.wt
## Mazda RX4 -0.081981 0.004607 -0.063696 0.180107 8.04e-03 0.068662
## Mazda RX4 Wag -0.011480 -0.008902 -0.004743 0.045798 -4.69e-03 0.004732
## Datsun 710 -0.247039 0.215632 0.241747 -0.276018 9.82e-02 -0.259221
## Hornet 4 Drive 0.003737 -0.005989 0.015997 -0.005833 -1.63e-02 -0.016626
## Hornet Sportabout -0.016149 0.029998 0.076674 -0.036781 -4.54e-03 -0.083987
## Valiant -0.017435 -0.026129 0.058592 -0.038342 2.89e-01 -0.001085
## Duster 360 -0.071413 0.080421 -0.057491 -0.047503 2.10e-02 0.090599
## Merc 240D 0.029852 -0.058299 0.021766 -0.060792 -4.90e-02 0.037957
## Merc 230 1.011260 -0.272125 -0.283831 -0.226035 -1.69e-01 0.377031
## Merc 280 0.027299 -0.039212 0.036655 0.023105 -3.12e-02 -0.037950
## Merc 280C 0.253088 -0.256518 0.127896 0.114779 -1.71e-01 -0.102117
## Merc 450SE 0.006247 0.279023 -0.557904 0.217895 4.24e-02 0.446227
## Merc 450SL -0.044251 0.178948 -0.196419 0.088379 -4.17e-03 0.077532
## Merc 450SLC 0.025114 -0.053715 0.048645 -0.024596 -2.01e-03 -0.015753
## Cadillac Fleetwood -0.014431 0.132139 -0.218356 0.148208 4.63e-02 0.056477
## Lincoln Continental -0.000115 0.000494 -0.000316 0.000223 -3.90e-06 -0.000376
## Chrysler Imperial 0.116450 -0.412938 -0.213543 0.259178 3.92e-01 0.823253
## Fiat 128 -0.091717 0.125746 -0.363777 0.224745 1.91e-01 0.290491
## Honda Civic -0.058297 0.017861 0.153248 -0.131358 2.24e-01 -0.164260
## Toyota Corolla -0.476099 0.305534 0.117765 0.110166 3.29e-01 -0.400715
## Toyota Corona -0.466441 0.612109 0.041798 -0.496139 9.04e-02 0.157577
## Dodge Challenger -0.090587 -0.085566 -0.013032 0.128090 1.78e-01 0.036779
## AMC Javelin 0.103187 -0.326221 0.023360 0.140633 -2.30e-02 0.062435
## Camaro Z28 -0.073631 0.062286 0.051674 -0.114459 -1.27e-01 -0.038616
## Pontiac Firebird -0.010553 0.013091 0.312379 -0.195503 -3.66e-02 -0.208349
## Fiat X1-9 -0.008204 0.003417 0.006725 -0.005453 -4.21e-03 -0.000384
## Porsche 914-2 -0.066053 0.052319 0.019572 0.047301 -4.11e-02 -0.136472
## Lotus Europa 0.299336 -0.281856 0.167487 0.036322 -5.19e-01 -0.190756
## Ford Pantera L 1.510633 -1.196884 0.035318 -0.642924 -1.21e+00 -0.239171
## Ferrari Dino -0.010255 0.004675 0.000792 0.007634 1.62e-02 0.001484
## Maserati Bora -0.120853 -0.130614 0.049175 0.484479 -2.76e-01 -0.329118
## Volvo 142E -0.197211 0.240072 0.253185 -0.254683 -9.25e-02 -0.329472
## dfb.qsec dfb.gear dfb.carb dffit cov.r cook.d hat
## Mazda RX4 0.055300 7.59e-02 -0.157323 -0.25804 1.842 7.67e-03 0.252
## Mazda RX4 Wag 0.012510 1.20e-02 -0.033799 -0.06783 1.845 5.34e-04 0.197
## Datsun 710 0.283963 -8.81e-03 0.331172 -0.57787 1.049 3.64e-02 0.190
## Hornet 4 Drive 0.010295 -1.57e-03 0.006984 0.03422 1.759 1.36e-04 0.154
## Hornet Sportabout 0.038074 5.95e-04 0.018524 0.14744 1.773 2.51e-03 0.190
## Valiant -0.091762 -1.00e-01 0.066209 -0.44886 1.486 2.27e-02 0.232
## Duster 360 0.001851 1.21e-01 -0.071969 -0.17929 2.065 3.72e-03 0.299
## Merc 240D -0.021120 3.58e-02 0.018617 0.16130 1.802 3.01e-03 0.205
## Merc 230 -1.223691 -3.79e-01 -0.212302 -1.44744 1.964 2.28e-01 0.582
## Merc 280 -0.001090 -1.24e-02 -0.003003 -0.09050 1.809 9.50e-04 0.187
## Merc 280C -0.154453 -9.46e-02 -0.065059 -0.47899 1.331 2.56e-02 0.209
## Merc 450SE -0.208585 3.86e-02 -0.378696 0.65313 1.399 4.73e-02 0.293
## Merc 450SL 0.013176 -8.73e-03 -0.096772 0.32008 1.477 1.16e-02 0.172
## Merc 450SLC -0.017887 -3.37e-03 0.023428 -0.08553 1.816 8.49e-04 0.189
## Cadillac Fleetwood -0.035967 -1.99e-03 -0.146344 -0.35506 2.060 1.45e-02 0.344
## Lincoln Continental 0.000199 -3.74e-05 -0.000094 -0.00137 2.079 2.18e-07 0.282
## Chrysler Imperial -0.464207 -1.05e-01 -0.360020 1.44819 0.341 1.99e-01 0.297
## Fiat 128 -0.056650 1.33e-01 -0.436923 0.88238 0.198 7.13e-02 0.116
## Honda Civic 0.076061 -1.48e-01 0.160954 0.36884 2.737 1.57e-02 0.486
## Toyota Corolla 0.580907 2.43e-02 0.008767 1.07296 0.226 1.06e-01 0.168
## Toyota Corona 0.066963 7.69e-01 -0.132659 -1.06268 1.036 1.20e-01 0.355
## Dodge Challenger 0.066788 -6.30e-02 0.027819 -0.36088 1.568 1.48e-02 0.215
## AMC Javelin -0.049315 -8.23e-02 0.087066 -0.51383 1.058 2.89e-02 0.166
## Camaro Z28 0.095483 1.71e-01 0.026612 -0.26264 2.187 7.97e-03 0.352
## Pontiac Firebird 0.052135 5.92e-02 0.045625 0.51076 1.244 2.90e-02 0.203
## Fiat X1-9 0.007390 3.26e-03 0.012864 -0.05278 1.648 3.23e-04 0.103
## Porsche 914-2 0.183374 -1.37e-01 0.141702 -0.34085 2.004 1.33e-02 0.325
## Lotus Europa -0.132564 2.59e-01 -0.036962 0.83047 1.465 7.60e-02 0.367
## Ford Pantera L -0.397367 -1.66e+00 1.358217 -2.82349 0.843 7.74e-01 0.648
## Ferrari Dino 0.006093 -3.37e-03 -0.011959 -0.03015 2.385 1.06e-04 0.375
## Maserati Bora 0.353428 4.15e-02 0.353018 1.22608 2.644 1.67e-01 0.614
## Volvo 142E 0.284841 1.07e-01 0.235964 -0.53137 1.325 3.14e-02 0.229
## inf
## Mazda RX4
## Mazda RX4 Wag
## Datsun 710
## Hornet 4 Drive
## Hornet Sportabout
## Valiant
## Duster 360
## Merc 240D
## Merc 230 *
## Merc 280
## Merc 280C
## Merc 450SE
## Merc 450SL
## Merc 450SLC
## Cadillac Fleetwood
## Lincoln Continental
## Chrysler Imperial
## Fiat 128
## Honda Civic *
## Toyota Corolla
## Toyota Corona
## Dodge Challenger
## AMC Javelin
## Camaro Z28 *
## Pontiac Firebird
## Fiat X1-9
## Porsche 914-2
## Lotus Europa
## Ford Pantera L *
## Ferrari Dino *
## Maserati Bora *
## Volvo 142E