A continuación vamos a contruir un modelo predictivo de precios de vehiculo referencia mazda 3 para la ciudad de Cali, que descargamos con datos del portal carroya. La base de datos contiene las variables precio y año del vehiculo como se observa a continuación:

library(readxl)
mazda <- read_excel("~/Desktop/mazda3_cal.xlsx", 
    sheet = "modelo_simple")
head(mazda)
precio_millon año
69 2019
87 2022
66 2018
56 2016
72 2017
110 2023

Continuando con el ejercicio se realiza una exploración de la base datos:

require(table1) #tabla exploratoria
require(ggplot2) #graficos
require(plotly) #animaciones

table1(~precio_millon+as.factor(año),data=mazda)
Overall
(N=140)
precio_millon
Mean (SD) 65.4 (21.5)
Median [Min, Max] 67.5 [22.5, 110]
as.factor(año)
2005 1 (0.7%)
2006 4 (2.9%)
2007 2 (1.4%)
2008 1 (0.7%)
2009 6 (4.3%)
2010 6 (4.3%)
2011 4 (2.9%)
2012 3 (2.1%)
2014 1 (0.7%)
2015 14 (10.0%)
2016 15 (10.7%)
2017 17 (12.1%)
2018 22 (15.7%)
2019 19 (13.6%)
2020 8 (5.7%)
2021 6 (4.3%)
2022 8 (5.7%)
2023 3 (2.1%)
ggplot(mazda,aes(x=año,y=precio_millon))+geom_point()+geom_smooth(method = "lm")

Se observa que el precio promedio del vehiculo mazda 3 en cali esta en 65 millones de pesos con un rango entre los 22 a 110 millones.

Adicionalmente los modelos varian desde el 2005 hasta 2023, con una mayor cantidad de datos del 2015 al 2019.

Por ultimo la relación entre precio y modelo se observa de manera lineal y positiva. Es decir modelos mas nuevos son mas caros en promedio.

Posteriormente vamos a estimar el modelo de regresión lineal:

require(caret)
names(mazda)[2]="year"
mod1=train(precio_millon~year,data=mazda,method="lm")
mod1
## Linear Regression 
## 
## 140 samples
##   1 predictor
## 
## No pre-processing
## Resampling: Bootstrapped (25 reps) 
## Summary of sample sizes: 140, 140, 140, 140, 140, 140, ... 
## Resampling results:
## 
##   RMSE      Rsquared  MAE     
##   6.734067  0.906547  5.430194
## 
## Tuning parameter 'intercept' was held constant at a value of TRUE
mod1$finalModel
## 
## Call:
## lm(formula = .outcome ~ ., data = dat)
## 
## Coefficients:
## (Intercept)         year  
##   -9883.820        4.934
#precio=-9883.820 +(4.934*año)

#ejemplo: de acuerdo con el modelo cual es el precio
#promedio de un vehiculo mazda 3 modelo 2018

-9883.820 +(4.934*2018)
## [1] 72.992
#vamos a crear la variable antiguedad
mazda$antiguedad=(2024-mazda$year)

mod2=train(precio_millon~antiguedad,data=mazda,method="lm")
mod2$finalModel
## 
## Call:
## lm(formula = .outcome ~ ., data = dat)
## 
## Coefficients:
## (Intercept)   antiguedad  
##     103.237       -4.934
mod2
## Linear Regression 
## 
## 140 samples
##   1 predictor
## 
## No pre-processing
## Resampling: Bootstrapped (25 reps) 
## Summary of sample sizes: 140, 140, 140, 140, 140, 140, ... 
## Resampling results:
## 
##   RMSE      Rsquared   MAE     
##   6.822017  0.9045098  5.510272
## 
## Tuning parameter 'intercept' was held constant at a value of TRUE
#precio= 103.237 -(4.934*antiguedad)

#promedio de un vehiculo mazda 3 modelo 2018

103.237 -(4.934*(2024-2018))
## [1] 73.633

uso practico del modelo:

  1. Como comprador con base en el modelo que recomendación se da si me ofrecen un mazda 3 del año 2018 en 55 millones de pesos. ¿Es una buena oportunidad de compra?
2024-2018
## [1] 6
precio_promedio_mercado=predict(mod2,list(antiguedad=6))
precio_promedio_mercado
##        1 
## 73.63157
inf=precio_promedio_mercado-(precio_promedio_mercado*0.08)
sup=precio_promedio_mercado+(precio_promedio_mercado*0.08)
c(precio_promedio_mercado,inf,sup)
##        1        1        1 
## 73.63157 67.74104 79.52209

EL precio promedio del vehiculo 2018 esta en los 73 millones con un rango entre 67 a 79 millones. Como comprador la oferta es buena ya que los 55 esta muy por debajo del precio de mercado por lo tanto se recomienda su compra.

  1. Proyectar el precio de los mazda 3 bajo las condiciones actuales de los proximos 3 años?
    predict(mod1,list(year=2025:2027))
##        1        2        3 
## 108.1718 113.1061 118.0404
    predict(mod2,list(antiguedad=-c(1:3)))
##        1        2        3 
## 108.1718 113.1061 118.0404
los precios proyectados para los proximos 3 años son 108, 113 y 118 millones respectivamente.\