Problema 1

Para el grupo de datos contenidos en la base arboles (data(arboles)) determine que variable (altura o diametro) tiene más relación con la variable peso.

library(paqueteMETODOS)
## Cargando paquete requerido: dplyr
## 
## Adjuntando el paquete: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
## Cargando paquete requerido: ggplot2
data("arboles")
head(arboles)
## # A tibble: 6 × 4
##      id  peso diametro altura
##   <int> <dbl>    <dbl>  <dbl>
## 1     1 13.7       4.7    5  
## 2     2 14.6       5.3    5.6
## 3     3 15.9       4.8    5.8
## 4     4  8.99      3.2    4.3
## 5     5  6.99      2.2    3.3
## 6     6 19.3       6.3    7.9
cor(arboles[, c("altura", "diametro", "peso")])
##             altura diametro      peso
## altura   1.0000000 0.935536 0.8582009
## diametro 0.9355360 1.000000 0.9081230
## peso     0.8582009 0.908123 1.0000000

Problema 2

Realice las pruebas de hipótesis con las que pueda verificar si las correlaciones entre las variables : peso, diametro y altura son diferentes de cero

cor.test(arboles$peso, arboles$diametro)
## 
##  Pearson's product-moment correlation
## 
## data:  arboles$peso and arboles$diametro
## t = 20.346, df = 88, p-value < 2.2e-16
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.8634081 0.9386817
## sample estimates:
##      cor 
## 0.908123
cor.test(arboles$peso, arboles$altura)
## 
##  Pearson's product-moment correlation
## 
## data:  arboles$peso and arboles$altura
## t = 15.684, df = 88, p-value < 2.2e-16
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.7918402 0.9045332
## sample estimates:
##       cor 
## 0.8582009
cor.test(arboles$diametro, arboles$altura)
## 
##  Pearson's product-moment correlation
## 
## data:  arboles$diametro and arboles$altura
## t = 24.845, df = 88, p-value < 2.2e-16
## alternative hypothesis: true correlation is not equal to 0
## 95 percent confidence interval:
##  0.9034877 0.9571816
## sample estimates:
##      cor 
## 0.935536

Problema 3

La base de datos vivienda contenida en paqueteMET contiene las siguientes variables: id, zona, piso, estrato, preciom, areaconst, parqueaderos, banios, habitaciones, tipo, barrio, longitud, latitud

Contruya las siguientes dataset que cumpla con la siguientes condiciones:

casas : solo casas casasSUR : solo casas ubicadas en el sur de la ciudad casasSUR56 : solo casas ubicadas en el sur de la ciudad, pertenecientes a los estratos 5 y 6

casas = subset(vivienda, tipo == "Casa")
casasSUR = subset(casas, zona == "Zona Sur")
casasSUR56 <- subset(casasSUR, estrato %in% c(5, 6))
head(casas)
## # A tibble: 6 × 13
##      id zona    piso  estrato preciom areaconst parqueaderos banios habitaciones
##   <dbl> <chr>   <chr>   <dbl>   <dbl>     <dbl>        <dbl>  <dbl>        <dbl>
## 1  1147 Zona O… <NA>        3     250        70            1      3            6
## 2  1169 Zona O… <NA>        3     320       120            1      2            3
## 3  1350 Zona O… <NA>        3     350       220            2      2            4
## 4  5992 Zona S… 02          4     400       280            3      5            3
## 5  1209 Zona N… 02          5     320       150            2      4            6
## 6  1592 Zona N… 02          5     780       380            2      3            3
## # ℹ 4 more variables: tipo <chr>, barrio <chr>, longitud <dbl>, latitud <dbl>
head(casasSUR)
## # A tibble: 6 × 13
##      id zona    piso  estrato preciom areaconst parqueaderos banios habitaciones
##   <dbl> <chr>   <chr>   <dbl>   <dbl>     <dbl>        <dbl>  <dbl>        <dbl>
## 1  5992 Zona S… 02          4     400       280            3      5            3
## 2  5157 Zona S… 02          3     500       354            1      2            4
## 3  5501 Zona S… 02          3     175       102           NA      2            4
## 4  5156 Zona S… <NA>        3     420       369            1      5            5
## 5  3236 Zona S… <NA>        4     240        95           NA      3            3
## 6  7139 Zona S… 03          3     240        75           NA      3            5
## # ℹ 4 more variables: tipo <chr>, barrio <chr>, longitud <dbl>, latitud <dbl>
head(casasSUR56)
## # A tibble: 6 × 13
##      id zona    piso  estrato preciom areaconst parqueaderos banios habitaciones
##   <dbl> <chr>   <chr>   <dbl>   <dbl>     <dbl>        <dbl>  <dbl>        <dbl>
## 1  1126 Zona S… <NA>        5     380       151            1      3            3
## 2  8187 Zona S… 02          5     650       200            2      4            3
## 3  8186 Zona S… <NA>        5     420       310            2      3            4
## 4  4941 Zona S… <NA>        5     500       320            2      8            9
## 5  8298 Zona S… <NA>        5    1350       390            8     10           10
## 6  5057 Zona S… 01          5     490       250            2      4            4
## # ℹ 4 more variables: tipo <chr>, barrio <chr>, longitud <dbl>, latitud <dbl>

Problema 4

La base de datos vivienda contenida en paqueteMET contiene las siguientes variables: id, zona, piso, estrato, preciom, areaconst, parqueaderos, banios, habitaciones, tipo, barrio, longitud, latitud. Para las casas ubicadas en el sur de la ciudad que pertenecen al estrato 5 y 6, visualice la relación existente entre las variables : preciom, areaconst, parqueaderos, banios, habitaciones

casaSUR56 = subset(vivienda, vivienda$tipo == "Casa" & vivienda$zona == "Zona Sur" & vivienda$estrato>4)
GGally::ggpairs(casaSUR56[,5:9], title="Casas, ubicación sur, estratos 5 y 6") 
## Registered S3 method overwritten by 'GGally':
##   method from   
##   +.gg   ggplot2
## Warning in ggally_statistic(data = data, mapping = mapping, na.rm = na.rm, :
## Removed 79 rows containing missing values
## Warning in ggally_statistic(data = data, mapping = mapping, na.rm = na.rm, :
## Removed 79 rows containing missing values
## Warning: Removed 79 rows containing missing values or values outside the scale range
## (`geom_point()`).
## Removed 79 rows containing missing values or values outside the scale range
## (`geom_point()`).
## Warning: Removed 79 rows containing non-finite outside the scale range
## (`stat_density()`).
## Warning in ggally_statistic(data = data, mapping = mapping, na.rm = na.rm, :
## Removed 79 rows containing missing values
## Warning in ggally_statistic(data = data, mapping = mapping, na.rm = na.rm, :
## Removed 79 rows containing missing values
## Warning: Removed 79 rows containing missing values or values outside the scale range
## (`geom_point()`).
## Removed 79 rows containing missing values or values outside the scale range
## (`geom_point()`).

Problema 5

La base de datos vivienda contenida en paqueteMET contiene las siguientes variables: id, zona, piso, estrato, preciom, areaconst, parqueaderos, banios, habitaciones, tipo, barrio, longitud, latitud. Como se pudo observar la variable preciom, presenta asimetría a la derecha. Valida el cambio que ocurre cuando se transforma a través de la función logarítmica y visualiza su relación con las variables : areaconst, parqueaderos, banios, habitaciones.

casaSUR56 = subset(vivienda, vivienda$tipo == "Casa" & vivienda$zona == "Zona Sur" & vivienda$estrato>4)
casaSUR56$lnpreciom = log(casaSUR56$preciom)
GGally::ggpairs(casaSUR56[,c(14,7,8,9)], title="Casas, ubicación sur, estratos 5 y 6") 
## Warning in ggally_statistic(data = data, mapping = mapping, na.rm = na.rm, :
## Removed 79 rows containing missing values
## Warning: Removed 79 rows containing missing values or values outside the scale range
## (`geom_point()`).
## Warning: Removed 79 rows containing non-finite outside the scale range
## (`stat_density()`).
## Warning in ggally_statistic(data = data, mapping = mapping, na.rm = na.rm, :
## Removed 79 rows containing missing values
## Warning in ggally_statistic(data = data, mapping = mapping, na.rm = na.rm, :
## Removed 79 rows containing missing values
## Warning: Removed 79 rows containing missing values or values outside the scale range
## (`geom_point()`).
## Removed 79 rows containing missing values or values outside the scale range
## (`geom_point()`).

Problema 5

La data biomasa contenida en paqueteMOD contiene información sobre la biomasa total y la altura de 90 árboles. Estime el modelo biomasa=β0+β1altura+ε mediante el método de mínimos cuadrados ordinarios

library(paqueteMETODOS)
data("biomasa")

modelo=lm(biomasa$bio_total ~ biomasa$altura)
summary(modelo)
## 
## Call:
## lm(formula = biomasa$bio_total ~ biomasa$altura)
## 
## Residuals:
##    Min     1Q Median     3Q    Max 
## -8.228 -1.969  0.572  2.377 15.106 
## 
## Coefficients:
##                Estimate Std. Error t value Pr(>|t|)    
## (Intercept)     -7.0456     1.7046  -4.133 8.14e-05 ***
## biomasa$altura   3.8906     0.2481  15.684  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 4.211 on 88 degrees of freedom
## Multiple R-squared:  0.7365, Adjusted R-squared:  0.7335 
## F-statistic:   246 on 1 and 88 DF,  p-value: < 2.2e-16

Problema 6

A partir de la data biomasa contenida en paqueteMOD contiene información sobre la biomasa total y la altura de 90 árboles. se puede estimar el modelo biomasa=β0+β1altura+ε. A partir de los resultados obtenidos en la estimación valide los supuestos sobre los errores:

ε∼Normal V[ε]=σ2 Cor[εi,εj]=0 E[ε]=0

library(paqueteMETODOS)
library(lmtest)
## Cargando paquete requerido: zoo
## 
## Adjuntando el paquete: 'zoo'
## The following objects are masked from 'package:base':
## 
##     as.Date, as.Date.numeric
data(biomasa)

modelo=lm(biomasa$bio_total ~ biomasa$altura)
shapiro.test(modelo$residuals)
## 
##  Shapiro-Wilk normality test
## 
## data:  modelo$residuals
## W = 0.95439, p-value = 0.003157
gqtest(modelo)
## 
##  Goldfeld-Quandt test
## 
## data:  modelo
## GQ = 1.1017, df1 = 43, df2 = 43, p-value = 0.3761
## alternative hypothesis: variance increases from segment 1 to 2
dwtest(modelo)
## 
##  Durbin-Watson test
## 
## data:  modelo
## DW = 0.90216, p-value = 4.234e-09
## alternative hypothesis: true autocorrelation is greater than 0
t.test(modelo$residuals)
## 
##  One Sample t-test
## 
## data:  modelo$residuals
## t = -7.2961e-16, df = 89, p-value = 1
## alternative hypothesis: true mean is not equal to 0
## 95 percent confidence interval:
##  -0.8770047  0.8770047
## sample estimates:
##     mean of x 
## -3.220321e-16

Problema 7

La data biomasa contenida en paqueteMOD contiene información sobre la biomasa total y la altura de 90 árboles. Verifique el valor de λ para la constante de la transformación Box-Cox para establecer la transformación apropiada de la variable dependiente en el modelo biomasa=β0+β1altura+ε

library(paqueteMETODOS)
library(MASS)
## 
## Adjuntando el paquete: 'MASS'
## The following object is masked from 'package:dplyr':
## 
##     select
data(biomasa)

bc = boxcox(modelo, lambda = seq(-1, 1, length = 100))

a=bc$x[which.max(bc$y)]
a
## [1] 0.3333333

Problema 8

Para el modelo biomasa=β0+β1altura+ε , obtenido a partir de la data biomasa contenida en paqueteMOD , verifique gráficamente el cumplimiento de los supuestos sobre los errores.

library(paqueteMETODOS)
data(biomasa)
modelo=lm(biomasa$bio_total ~ biomasa$altura)
par(mfrow = c(2,2))
plot(modelo)

Problema 9

La base de datos vivienda contenida en paqueteMET contiene las siguientes variables: id, zona, piso, estrato, preciom, areaconst, parqueaderos, banios, habitaciones, tipo, barrio, longitud, latitud. Para las casas ubicadas en el sur de la ciudad que pertenecen al estrato 5 y 6 construya el siguiente modelo de regresión: preciom = f(areaconst)

library(paqueteMETODOS)
data("vivienda")

casaSUR56 = subset(vivienda, vivienda$tipo == "Casa" & vivienda$zona == "Zona Sur" & vivienda$estrato > 4)
modelo56 = lm(preciom ~ areaconst, data = vivienda)
summary(modelo56)
## 
## Call:
## lm(formula = preciom ~ areaconst, data = vivienda)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -2659.88  -120.78   -47.55    67.27  1330.10 
## 
## Coefficients:
##              Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 157.47636    4.13640   38.07   <2e-16 ***
## areaconst     1.58018    0.01831   86.30   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 238.7 on 8317 degrees of freedom
##   (3 observations deleted due to missingness)
## Multiple R-squared:  0.4725, Adjusted R-squared:  0.4724 
## F-statistic:  7448 on 1 and 8317 DF,  p-value: < 2.2e-16

Problema 10

La base de datos vivienda contenida en paqueteMET contiene las siguientes variables: id, zona, piso, estrato, preciom, areaconst, parqueaderos, banios, habitaciones, tipo, barrio, longitud, latitud. Para el modelo regresión: preciom = f(areaconst), construido para las casas ubicadas en el sur de la ciudad y pertenecientes a los estratos 5 y 6, valide el cumplimiento de los supuestos.

normalidad de los errores varianza constante de los errores independencia de los errores

library(paqueteMETODOS)
data("vivienda")
casaSUR56 = subset(vivienda, vivienda$tipo == "Casa" & vivienda$zona == "Zona Sur" & vivienda$estrato > 4)
modelo56 = lm(preciom ~ areaconst, data=vivienda)

residuales56 = modelo56$residuals 
nortest::ad.test(residuales56)
## 
##  Anderson-Darling normality test
## 
## data:  residuales56
## A = 346.57, p-value < 2.2e-16
lmtest::bgtest(modelo56)
## 
##  Breusch-Godfrey test for serial correlation of order up to 1
## 
## data:  modelo56
## LM test = 1703, df = 1, p-value < 2.2e-16
lmtest::dwtest(modelo56)
## 
##  Durbin-Watson test
## 
## data:  modelo56
## DW = 1.1055, p-value < 2.2e-16
## alternative hypothesis: true autocorrelation is greater than 0