Calcula y representa gráficamente la recta de regresión, junto con la correspondiente nube de puntos. ¿Cuánto vale el coeficiente de correlación al cuadrado en este caso? ¿Cuánto valen los estimadores de todos los parámetros del modelo? Contrasta la hipótesis de que la pendiente de la recta es cero a nivel 0.05. Calula un intervalo de confianza para la pendiente de la recta de nivel 90%. Calcula y representa los intervalos de confianza al 95% de la cantidad de grasas media para los individuos entre 30 y 90 kg. Lleva a cabo el diagnóstico del modelo.
setwd("~/PyE verano 2020")
library(pacman)
p_load("base64enc", "htmltools", "mime", "xfun", "prettydoc", "readr", "ggplot2", "tidyr", "plotly", "DT")
grasa <- read.table("http://verso.mat.uam.es/~joser.berrendero/datos/EdadPesoGrasas.txt", header = TRUE)
names(grasa)
## [1] "peso" "edad" "grasas"
se tienen datos de 25 personas de peso, edad, y grasas.
datatable(grasa)
pairs(grasa)
cor(grasa)
## peso edad grasas
## peso 1.0000000 0.2400133 0.2652935
## edad 0.2400133 1.0000000 0.8373534
## grasas 0.2652935 0.8373534 1.0000000
regresionA2 <- lm(grasas ~ peso, data=grasa )
summary(regresionA2)
##
## Call:
## lm(formula = grasas ~ peso, data = grasa)
##
## Residuals:
## Min 1Q Median 3Q Max
## -127.729 -53.686 -9.239 46.537 128.404
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 199.298 85.818 2.322 0.0294 *
## peso 1.622 1.229 1.320 0.2000
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 76.65 on 23 degrees of freedom
## Multiple R-squared: 0.07038, Adjusted R-squared: 0.02996
## F-statistic: 1.741 on 1 and 23 DF, p-value: 0.2
Los parámetros de la ecuación de la recta de mínimos cuadrados que relaciona la cantidad de grasas en la sangre en función del peso vienen dados por la columna ´Estimate´ de la tabla ´Coefficients´ de la salida anterior. Por lo tanto, en este ejemplo la ecuación de la recta de mínimos cuadrados es:
\[ y = 199.298 + 1.6220 x \]
plot(grasa$peso, grasa$grasas, xlab= "Pesos", ylab= "Grasas")
abline(regresionA2)
El coeficiente de correlacion al caudrado esta dado a partir de la salida anterior, vemos que su valor en este caso es Multiple R-squared: 0.07038.
se tiene una R-sequared de 0.07038 revazando el nivel 0.05 diciendonos que nuestro intervalo de confiaza es menor del 95% por lo que la hipotesis que son iguales.
confint(regresionA2, level = 0.90)
## 5 % 95 %
## (Intercept) 52.2166142 346.378389
## peso -0.4847468 3.729432
confint(regresionA2, level = 0.90)
## 5 % 95 %
## (Intercept) 52.2166142 346.378389
## peso -0.4847468 3.729432
nuevos.pesos <- data.frame(peso=seq(20,90) )
# grafica de dispersion y recta.
plot(grasa$peso, grasa$grasas, xlab = "Peso", ylab = "grasas")
abline(regresionA2)
# intervalos de confianza a la respuesta media.
# ic es una matriz de tres columnas: la primera es la predicción, las otras son los extremos del intervalo
ic <- predict(regresionA2, nuevos.pesos, interval = "confidence")
lines(nuevos.pesos$peso, ic[, 2], lty =2, col= "red" )
lines(nuevos.pesos$peso, ic[, 3], lty =2, col= "blue" )
# intervalo de prediccion
ic <- predict(regresionA2, nuevos.pesos, interval = "prediction")
lines(nuevos.pesos$peso, ic[, 2], lty =2, col= "red" )
lines(nuevos.pesos$peso, ic[, 3], lty =2, col= "blue" )
residuosA2 <- rstandard(regresionA2)
valores.ajustados <- fitted(regresionA2)
plot(valores.ajustados, residuosA2)
qqnorm(residuosA2)
qqline(residuosA2)
al ver como estan distribuidos los datos podemos ver que se salen de el nivel de confianza del 95% pero al ver en la comprobación de la hipotesis de normalidad podemos observar que los datos distribuidos estan mu sercanos a una linealidad normal, por que la hipotesis tambien podria ser aceptada pero esta hipotesis tendria un poco mas de error.