U1A14

Marijose González del Real

04/Oct/2020

Regresión lineal simple parte 2

  • Para este ejercicio se utilizará la serie de datos “Orange” que son circunferencias con respecto a la edad de árboles de naranja"

Orange tree

  • Importar datos
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
head(Orange)
##   Tree  age circumference
## 1    1  118            30
## 2    1  484            58
## 3    1  664            87
## 4    1 1004           115
## 5    1 1231           120
## 6    1 1372           142
  • Conociendo los datos
glimpse(Orange)
## Rows: 35
## Columns: 3
## $ Tree          <ord> 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2, 3, 3, 3, 3,...
## $ age           <dbl> 118, 484, 664, 1004, 1231, 1372, 1582, 118, 484, 664,...
## $ circumference <dbl> 30, 58, 87, 115, 120, 142, 145, 33, 69, 111, 156, 172...
age <- as.numeric(Orange$age)
circumference <- as.numeric(Orange$circumference)
orange <- data.frame(age, circumference)
  • Resumen estadístico
summary(orange)
##       age         circumference  
##  Min.   : 118.0   Min.   : 30.0  
##  1st Qu.: 484.0   1st Qu.: 65.5  
##  Median :1004.0   Median :115.0  
##  Mean   : 922.1   Mean   :115.9  
##  3rd Qu.:1372.0   3rd Qu.:161.5  
##  Max.   :1582.0   Max.   :214.0
  • Matriz de diagramas de dispersión
pairs(orange)

  • Matriz de diagramas de coeficientes de correlación
cor(orange)
##                     age circumference
## age           1.0000000     0.9135189
## circumference 0.9135189     1.0000000
  • Prueba de correlación de pearson
cor.test(x= orange$circumference, y= orange$age, method="pearson", digits=3)
## 
##  Pearson's product-moment correlation
## 
## data:  orange$circumference and orange$age
## t = 12.9, df = 33, p-value = 1.931e-14
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.8342364 0.9557955
## sample estimates:
##       cor 
## 0.9135189
library(GGally)
## Loading required package: ggplot2
## Registered S3 method overwritten by 'GGally':
##   method from   
##   +.gg   ggplot2
ggpairs(orange, lower=list(continuous = "smooth"), diag = list(continuous = "bar"), axisLabels = "none")
## 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`.

De lo analizado hasta aquí, podemos concluir que:

  1. La variable “circumference” esta relacionada con la variable “age”, por lo cual la usaremos como respuesta en este modelo.

  2. El coeficiente de correlación de pearson es muy alto (0.9135189) y el valor de P es significativo (p-value < 1.931e-14), esto indica una correlación intensa.

  3. SI tiene sentido generar un modelo de regresión lineal simple, dado que tiene una correlación y significancia importantes

Modelo de regresión lineal simple

modelo.lineal <- lm(age ~ circumference, data=orange)
summary(modelo.lineal)
## 
## Call:
## lm(formula = age ~ circumference, data = orange)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -317.88 -140.90  -17.20   96.54  471.16 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)    16.6036    78.1406   0.212    0.833    
## circumference   7.8160     0.6059  12.900 1.93e-14 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 203.1 on 33 degrees of freedom
## Multiple R-squared:  0.8345, Adjusted R-squared:  0.8295 
## F-statistic: 166.4 on 1 and 33 DF,  p-value: 1.931e-14
  • Ecuación de la recta de mínimos cuadrados

\[ y = 16.6036 + 7.8160 x \] * Intervalos de confianza

confint(modelo.lineal)
##                     2.5 %     97.5 %
## (Intercept)   -142.374674 175.581892
## circumference    6.583325   9.048672
library(ggplot2)
ggplot(data = orange, mapping = aes(x = circumference, y = age)) +
geom_point(color = "firebrick", size = 2) +
geom_smooth(method = "lm", se = TRUE, color = "black") +
labs(title = "Age ~ Circumference", x = "Circumference", y = "age") +
theme_bw() + theme(plot.title = element_text(hjust = 0.5))
## `geom_smooth()` using formula 'y ~ x'

Verificar condiciones para aceptar o no el modelo

  • Para evaluar las condiciones que permiten decir que el modelo es válido, se hará un análisis de residuos.
par(mfrow =c(1,2))
plot(modelo.lineal)

Contraste de hipótesis (normalidad de residuos)

Según el método de prueba de Shapiro-wilk

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

Conclusión

El análisis anterior hace referencia a la circunferencia de árboles de naranja con respecto a la edad que tienen. Por ello, se utilizaron las variables “circumference” y “age”. Al obtener el diagrama de dispersión se pudo observar una cierta linealidad entre los datos, lo cual representaba una cierta relación, creando una correlación positiva. Sin embargo, se obtuvo el coeficiente de correlación con un valor de 0.9135189 y después se comprobó esto con la prueba de correlación de Pearson, obteniendo un valor en la correlación de 0.9135189 y con una p de 1.931e-14. Al obtener los datos anteriores se confirma la idea de que las variables tienen cierta relación, ya que la correlación es alta y la p muy pequeña. Asimismo, se pudo generar un modelo de regresión lineal simple en el cual se obtuvo la ecuación de mínimos cuadrados y se pudieron analizar los intervalos de confianza. Además, se puede observar que los datos están muy poco dispersos, así que se realizó un análisis de residuos para evaluar si es modelo es válido. Con los resultados, se encontraron muy pocos residuos y se utilizó la prueba de Shapiro-wilk, la cual generó un coeficiente de correlación de 0.9565 y una p de 0.1792, valores que presentan que las variables si se relacionan y que es un modelo válido. Finalmente se puede decir que a medida en que los árboles envejecen, su circunferencia aumenta.

árbol de naranja árbol de naranja