Regresión lineal simple parte 2

Análisis exploratorio de datos

Para este ejemplo usaremos datos de árboles de cereza negros

library(pacman)
p_load("dplyr","GGally","prettydoc","ggplot")
## Installing package into 'C:/Users/f_aco/Documents/R/win-library/3.6'
## (as 'lib' is unspecified)
## Warning: package 'ggplot' is not available (for R version 3.6.3)
## Warning: unable to access index for repository http://www.stats.ox.ac.uk/pub/RWin/bin/windows/contrib/3.6:
##   no fue posible abrir la URL 'http://www.stats.ox.ac.uk/pub/RWin/bin/windows/contrib/3.6/PACKAGES'
## Warning: 'BiocManager' not available.  Could not check Bioconductor.
## 
## Please use `install.packages('BiocManager')` and then retry.
## Warning in p_install(package, character.only = TRUE, ...):
## Warning in library(package, lib.loc = lib.loc, character.only = TRUE,
## logical.return = TRUE, : there is no package called 'ggplot'
## Warning in p_load("dplyr", "GGally", "prettydoc", "ggplot"): Failed to install/load:
## ggplot
head(trees)
##   Girth Height Volume
## 1   8.3     70   10.3
## 2   8.6     65   10.3
## 3   8.8     63   10.2
## 4  10.5     72   16.4
## 5  10.7     81   18.8
## 6  10.8     83   19.7
  • Primer vistazo a los datos
glimpse(trees)
## Rows: 31
## Columns: 3
## $ Girth  <dbl> 8.3, 8.6, 8.8, 10.5, 10.7, 10.8, 11.0, 11.0, 11.1, 11.2, 11....
## $ Height <dbl> 70, 65, 63, 72, 81, 83, 66, 75, 80, 75, 79, 76, 76, 69, 75, ...
## $ Volume <dbl> 10.3, 10.3, 10.2, 16.4, 18.8, 19.7, 15.6, 18.2, 22.6, 19.9, ...
  • Resumen estadístico de posición central
summary(trees)
##      Girth           Height       Volume     
##  Min.   : 8.30   Min.   :63   Min.   :10.20  
##  1st Qu.:11.05   1st Qu.:72   1st Qu.:19.40  
##  Median :12.90   Median :76   Median :24.20  
##  Mean   :13.25   Mean   :76   Mean   :30.17  
##  3rd Qu.:15.25   3rd Qu.:80   3rd Qu.:37.30  
##  Max.   :20.60   Max.   :87   Max.   :77.00

Análisis de correlación

Matriz de diagramas de dispersión

pairs(trees)

Se puede ver que existe una relación muy grande entre la circunferencia y el volumen del arbol, dejanco en claro que entre mas grande la circunferencia del arbol el volumen es mayor

Matriz de coeficientes de correlación

cor(trees)
##            Girth    Height    Volume
## Girth  1.0000000 0.5192801 0.9671194
## Height 0.5192801 1.0000000 0.5982497
## Volume 0.9671194 0.5982497 1.0000000

Existe una relación de 96% entre el volumen y la circunferencia

Prueba de correlación de pearson

cor.test(x = trees$Girth, y = trees$Volume, method="pearson", digits=3)
## 
##  Pearson's product-moment correlation
## 
## data:  trees$Girth and trees$Volume
## t = 20.478, df = 29, p-value < 2.2e-16
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.9322519 0.9841887
## sample estimates:
##       cor 
## 0.9671194

Resumen de análisis de correlación

ggpairs(trees, lower= list(continuous = "smooth"), diag = list(continuous ="bar"), axislab="none")
## Warning in warn_if_args_exist(list(...)): Extra arguments: "axislab" are being
## ignored. If these are meant to be aesthetics, submit them using the 'mapping'
## variable within ggpairs with ggplot2::aes or ggplot2::aes_string.
## Warning in check_and_set_ggpairs_defaults("diag", diag, continuous =
## "densityDiag", : Changing diag$continuous from 'bar' to 'barDiag'
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.

Conclusiones del análisis de correlación:

  1. Observando las gráficas de diagramas de dispersión, tenemos que: el diámetro (girth) está relacionado con el volumen (Volume).

  2. El coeficiente de correlación de pearson es bastante alto (0.9671194) y tenemos un valor de P significativo (< 2.2e-16)

  3. Tiene sentido realizar un modelo de regresión lineal.

Cálculo del modelo de regresión lineal simple

modelo.lineal <- lm(Volume ~ Girth, data= trees )
summary(modelo.lineal )
## 
## Call:
## lm(formula = Volume ~ Girth, data = trees)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -8.065 -3.107  0.152  3.495  9.587 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) -36.9435     3.3651  -10.98 7.62e-12 ***
## Girth         5.0659     0.2474   20.48  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 4.252 on 29 degrees of freedom
## Multiple R-squared:  0.9353, Adjusted R-squared:  0.9331 
## F-statistic: 419.4 on 1 and 29 DF,  p-value: < 2.2e-16

Ecuación de la recta de mínimos cuadrados

\[ y = -36.9435 + 5.0659x\]

names(modelo.lineal)
##  [1] "coefficients"  "residuals"     "effects"       "rank"         
##  [5] "fitted.values" "assign"        "qr"            "df.residual"  
##  [9] "xlevels"       "call"          "terms"         "model"

Intervalos de confianza

confint(modelo.lineal)
##                  2.5 %     97.5 %
## (Intercept) -43.825953 -30.060965
## Girth         4.559914   5.571799

Condiciones para aceptar el modelo

Análisis de residuales

par(mfrow=c(1,2))
plot(modelo.lineal)

Tarea

  • Correlación de pearson
  • Prueba de confianza
  • Shapiro-wilk
  • Residuales
  • Gráfico Q-Q

Correlación de pearson

cor.test(x = trees$Girth, y = trees$Volume, method="pearson", digits=3)
## 
##  Pearson's product-moment correlation
## 
## data:  trees$Girth and trees$Volume
## t = 20.478, df = 29, p-value < 2.2e-16
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.9322519 0.9841887
## sample estimates:
##       cor 
## 0.9671194

Esta prueba de correlación indica que ambos datos tienen un aproximado de 95% de intervalo de confianza, lo cual indica que es muy seguro decir que estan estrechamente relacionados

Prueba de confianza

confint(modelo.lineal)
##                  2.5 %     97.5 %
## (Intercept) -43.825953 -30.060965
## Girth         4.559914   5.571799

Esto confirma lo mencionado anteriormente.

Shapiro-wilk

shapiro.test(modelo.lineal$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  modelo.lineal$residuals
## W = 0.97889, p-value = 0.7811

En esta prueba podemos ver que esta distribución es normal

Residuales

rstudent(modelo.lineal)
##           1           2           3           4           5           6 
##  1.31557278  0.91165148  0.62868269  0.03618103  0.36653703  0.46047073 
##           7           8           9          10          11          12 
## -0.76171800 -0.13774522  0.79326485  0.02505445  0.93646637  0.04554150 
##          13          14          15          16          17          18 
##  0.14012089 -0.24254305 -1.14397583 -1.51694101  1.30536686 -0.71890721 
##          19          20          21          22          23          24 
## -1.66507300 -2.03043980  0.12265438 -0.78292491 -0.04981346 -1.43318713 
##          25          26          27          28          29          30 
## -0.73053555  1.16550985  0.98530448  1.14096071 -0.67663367 -0.80263451 
##          31 
##  2.83773229

Se puede ver que la relación es lineal en la mayoría, por ende se puede suponer que los valores si están relacionados entre si.

Gráfico Q-Q

qqnorm(x = trees$Girth, y = trees$Volume)

En esta QQplot se puede apreciar que las muestras cuantiles están relacionados de manera lineal, casi si desviaciones con los cuantiles teóricos.

Por ende se puede especular que la relación del volumen con la circunferencia es muy estrecha, debido a que mayor circunferencia su volumen aumenta, obviamente también influye la altura del árbol para su volumen, pero podemos ver que lo que influye mayormente es su circunferencia.