U4A2

  1. Ajusta el modelo que explica la cantidad de grasas en función del peso.

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)

correlacion con matriz de diagrama de dispersion

pairs(grasa)

Calcula y representa gráficamente la recta de regresión, junto con la correspondiente nube de puntos.

  • coeficiente de correlacion
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
  • estimacion y representacion de la recta de minimos cuadrados

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 \]

  • la nube de puntos de grasas ~ pesos es :
plot(grasa$peso, grasa$grasas, xlab= "Pesos", ylab= "Grasas")
abline(regresionA2)

¿Cuánto vale el coeficiente de correlación al cuadrado en este caso?

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.

¿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.

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.

Calula un intervalo de confianza para la pendiente de la recta de nivel 90%

confint(regresionA2, level = 0.90)
##                    5 %       95 %
## (Intercept) 52.2166142 346.378389
## peso        -0.4847468   3.729432

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.

  • intervakis de confianza al 95%
confint(regresionA2, level = 0.90)
##                    5 %       95 %
## (Intercept) 52.2166142 346.378389
## peso        -0.4847468   3.729432
  • Calcula y representa los intervalos de confianza al 95% de la cantidad de grasas media para los individuos entre 30 y 90 kg.
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" )

  • diagnostico del modelo
residuosA2 <- rstandard(regresionA2)
valores.ajustados <- fitted(regresionA2)
plot(valores.ajustados, residuosA2)

  • comprobacion de hipotesis de normalidad
qqnorm(residuosA2)
qqline(residuosA2)

conclusion

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.