El análisis de precios en el mercado de vehículos usados es fundamental tanto para compradores como para vendedores, ya que permite comprender qué factores influyen en la valoración de un automóvil. En este trabajo se realiza un estudio exploratorio y estadístico sobre una base de datos de vehículos, con el objetivo de identificar qué variables explican mejor el comportamiento del precio. Para ello, se emplean modelos lineales simples y múltiples que incorporan variables tanto cuantitativas como cualitativas, tales como el kilometraje, el año del modelo, la marca del vehículo, el tipo de transmisión, entre otras. Además del ajuste de los modelos, se lleva a cabo un análisis de los residuos con el fin de evaluar la validez de los supuestos clásicos de regresión y determinar la necesidad de transformaciones, como el logaritmo, sobre las variables. Los resultados obtenidos permiten establecer conclusiones sobre la relevancia de ciertos factores y ofrecen lineamientos para la construcción de modelos más robustos en futuros análisis.
| precio | km | modelo | veh | transmision | combustible |
|---|---|---|---|---|---|
| 38000000 | 111000 | 2011 | kia cerato | Mecánica | Gasolina |
| 46500000 | 65000 | 2014 | kia cerato | Mecánica | Gasolina |
| 43000000 | 86500 | 2013 | kia cerato | Mecánica | Gasolina |
| 35000000 | 134000 | 2011 | kia cerato | Mecánica | Gasolina |
| 48500000 | 112000 | 2015 | kia cerato | Mecánica | Gasolina |
| 43000000 | 105000 | 2012 | kia cerato | Automática | Gasolina |
En este análisis exploraremos las características de los carros modelos Kia cerato y Chevrolet Sail en la ciudad de Cali, Colombia, con el objetivo de comprender la distribución y variabilidad de variables:
NOTA: La variable combustible no se tomará en cuenta ya que como se ve en la siguiente tabla todos los carros usan gasolina.
| variable | unicos |
|---|---|
| Vehículo | 2 |
| Transmisión | 2 |
| Combustible | 1 |
| variable | Max | Min | Media | Mediana | Desvest | CoefVar |
|---|---|---|---|---|---|---|
| Precio | 8.3e+07 | 1e+06 | 40445659 | 3.7e+07 | 12411760 | 0.3069 |
| Km | 228000 | 0 | 92492 | 91000 | 42745 | 0.4622 |
| Modelo | 2022 | 2010 | 2015 | 2015 | 2.457 | 0.001219 |
El análisis descriptivo muestra que las variables Precio y Km presentan una alta dispersión relativa, evidenciada por sus coeficientes de variación de 0.3069 y 0.4622, respectivamente, y por la diferencia entre la media y la mediana, lo que sugiere una posible distribución sesgada a la derecha y la presencia de valores atípicos, como vehículos con precios o kilometrajes notablemente mayores al promedio. En contraste, la variable Modelo es más homogénea (coeficiente de variación de 0.001219), con media y mediana iguales lo que tiene coherencia ya que esta variable está expresada en años (números enteros), indicando una distribución simétrica y concentrada. Estos resultados sugieren la necesidad de considerar transformaciones como el logaritmo del precio y km, o el tratamiento de outliers, para mejorar la precisión y validez del modelo de regresión.
Con el histograma vemos que la mayoría de carros se concentran en un rango de precios de 25 a 40 millones. Siendo los datos que más se repiten cercanos a 35 millones de pesos.
La varible km tiene una mejor distribución (más normal) que la variable precios. Los carros se concentran en 70.000 y 100.000 km.
En primera instancia vemos que las variables cuantitativas: modelo y km, no tienen una correlación alta con el precio. La correlación más alta es entre ellas, es decir, modelo y km (-0.54). A primera vista no parece que se pueda realizar un modelo simple con estas variables, sin embargo veamoslo:
##
## Call:
## lm(formula = precio ~ km, data = datos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -40856877 -7854938 -4054037 5068628 39933128
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 4.577e+07 2.571e+06 17.802 <2e-16 ***
## km -5.762e+01 2.525e+01 -2.282 0.0242 *
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 12210000 on 127 degrees of freedom
## Multiple R-squared: 0.03938, Adjusted R-squared: 0.03181
## F-statistic: 5.206 on 1 and 127 DF, p-value: 0.02418
##
## Call:
## lm(formula = precio ~ modelo, data = datos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -39042401 -8630002 -5042401 8251399 33988597
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -3.574e+09 8.446e+08 -4.232 4.40e-05 ***
## modelo 1.794e+06 4.191e+05 4.280 3.65e-05 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 11650000 on 127 degrees of freedom
## Multiple R-squared: 0.1261, Adjusted R-squared: 0.1192
## F-statistic: 18.32 on 1 and 127 DF, p-value: 3.65e-05
##
## Call:
## lm(formula = km ~ modelo, data = datos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -113104 -20824 -1037 15644 143034
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 18853398 2628706 7.172 5.41e-11 ***
## modelo -9310 1304 -7.137 6.49e-11 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 36250 on 127 degrees of freedom
## Multiple R-squared: 0.2863, Adjusted R-squared: 0.2806
## F-statistic: 50.94 on 1 and 127 DF, p-value: 6.495e-11
Como se puede evidenciar, los modelos simples con variables cuantitativas no son buenos ya que el modelo que mejor funciona no logra explicar más del 30% (modelo 3) de la variable dependiente, por lo que se evaluara un modelo simple pero con variables dummys, para esto vamos a transformar la variable modelo en una dummy para tener 3 variables cualitativas. Los carros modelos anteriores a 2015 se clasificarán como “Viejos” y los modelos superiores serán clasificados como “nuevos”, se elegió el 2015 ya que esta era la mediana de la variable modelo.
##
## Call:
## lm(formula = precio ~ veh, data = datos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -32423151 -5423151 -100000 3576849 33400000
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 33423151 1110140 30.107 <2e-16 ***
## vehkia cerato 16176849 1684917 9.601 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 9485000 on 127 degrees of freedom
## Multiple R-squared: 0.4206, Adjusted R-squared: 0.416
## F-statistic: 92.18 on 1 and 127 DF, p-value: < 2.2e-16
##
## Call:
## lm(formula = precio ~ transmision, data = datos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -36331682 -5790909 -1131682 4168318 38168318
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 55590909 2209074 25.165 < 2e-16 ***
## transmisionMecánica -18259227 2425566 -7.528 8.37e-12 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 10360000 on 127 degrees of freedom
## Multiple R-squared: 0.3085, Adjusted R-squared: 0.3031
## F-statistic: 56.67 on 1 and 127 DF, p-value: 8.369e-12
##
## Call:
## lm(formula = precio ~ estado_modelo, data = datos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -36309718 -8284483 -4309718 6690282 38715517
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 44284483 1570399 28.200 < 2e-16 ***
## estado_modeloviejo -6974765 2116780 -3.295 0.00128 **
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 11960000 on 127 degrees of freedom
## Multiple R-squared: 0.07876, Adjusted R-squared: 0.0715
## F-statistic: 10.86 on 1 and 127 DF, p-value: 0.001276
Entre los modelos simples construidos con variables cualitativas, el de mejor desempeño es el que utiliza la variable veh (modelo 4), con un R² de 0.42, lo que indica que la marca del vehículo explica en promedio el 42% de la variabilidad del precio, un nivel moderado de capacidad explicativa. Según este modelo, el precio base estimado —sin distinguir entre marcas— es de 33.4 millones de pesos, y se estima que el Kia Cerato cuesta en promedio 16.2 millones de pesos más que el Chevrolet Sail. Por su parte, el modelo 5 revela que los vehículos con transmisión mecánica tienen un precio promedio 18.3 millones de pesos inferior al de los automáticos. Finalmente, el modelo 6 muestra que los vehículos antiguos (fabricados antes de 2015) son en promedio 6.9 millones de pesos más económicos que los modelos recientes.
Estos resultados destacan cómo variables cualitativas como la marca, tipo de transmisión y antigüedad influyen significativamente en el precio del vehículo, aunque de forma individual no alcanzan niveles de explicación suficientes para predecir con alta precisión.
En conclusión, aunque el modelo basado en la marca del vehículo es el más informativo entre los modelos simples evaluados, su precisión no es suficiente para ser utilizado con fines predictivos confiables. Por esto seguiremos con la modelación múltiple.
Para hallar el modelo múltiple que mejor funciona empezaremos realizando un modelo con todas las variables y realizaremos el Step by Step.
##
## Call:
## lm(formula = precio ~ km + modelo + veh + transmision + estado_modelo,
## data = datos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -28753803 -2458491 -63099 2230103 19921226
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -7.423e+09 7.073e+08 -10.495 < 2e-16 ***
## km 2.767e+01 1.239e+01 2.234 0.02730 *
## modelo 3.699e+06 3.503e+05 10.560 < 2e-16 ***
## vehkia cerato 2.059e+07 1.113e+06 18.502 < 2e-16 ***
## transmisionMecánica -4.738e+06 1.370e+06 -3.457 0.00075 ***
## estado_modeloviejo 1.252e+06 1.537e+06 0.815 0.41678
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 5030000 on 123 degrees of freedom
## Multiple R-squared: 0.8422, Adjusted R-squared: 0.8358
## F-statistic: 131.3 on 5 and 123 DF, p-value: < 2.2e-16
## Start: AIC=3987.01
## precio ~ km + modelo + veh + transmision + estado_modelo
##
## Df Sum of Sq RSS AIC
## - estado_modelo 1 1.6793e+13 3.1282e+15 3985.7
## <none> 3.1114e+15 3987.0
## - km 1 1.2623e+14 3.2376e+15 3990.1
## - transmision 1 3.0234e+14 3.4137e+15 3997.0
## - modelo 1 2.8211e+15 5.9325e+15 4068.3
## - veh 1 8.6597e+15 1.1771e+16 4156.7
##
## Step: AIC=3985.7
## precio ~ km + modelo + veh + transmision
##
## Df Sum of Sq RSS AIC
## <none> 3.1282e+15 3985.7
## - km 1 1.2323e+14 3.2514e+15 3988.7
## - transmision 1 2.9994e+14 3.4281e+15 3995.5
## - modelo 1 5.5110e+15 8.6392e+15 4114.8
## - veh 1 8.6568e+15 1.1785e+16 4154.8
La variable transformada estado_modelo no es significativa, y el steb by step dice que el modelo funciona mejor sin esta variable (AIC=3985.7). La otra variable que tiene una significacia baja es km, y el AIC no cambia mucho sin esta variable, sin embargo para efectos más prácticos y facilidad de la interpretación, se dejará esta variable.
##
## Call:
## lm(formula = precio ~ km + modelo + veh + transmision, data = datos)
##
## Residuals:
## Min 1Q Median 3Q Max
## -28251553 -2588329 -116762 2151060 19644934
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -6.997e+09 4.767e+08 -14.678 < 2e-16 ***
## km 2.733e+01 1.236e+01 2.210 0.028929 *
## modelo 3.489e+06 2.360e+05 14.780 < 2e-16 ***
## vehkia cerato 2.058e+07 1.111e+06 18.524 < 2e-16 ***
## transmisionMecánica -4.718e+06 1.368e+06 -3.448 0.000772 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 5023000 on 124 degrees of freedom
## Multiple R-squared: 0.8414, Adjusted R-squared: 0.8362
## F-statistic: 164.4 on 4 and 124 DF, p-value: < 2.2e-16
Los supuestos del modelo indican que no parece estrictamente necesario aplicar una transformación logarítmica a las variables del modelo. Aunque transformar la variable dependiente con logaritmo puede ser útil para corregir problemas de no linealidad o heterocedasticidad severa, los gráficos muestran que estos problemas son leves o moderados en este caso.
Nota: De igual manera se hizo la transformación logarítmica pero el modelo empeoró y su R cuadrado se redujo a la mitad
Después de evaluar todos los modelos (simples y múltiples) el mejor modelo, definido por un R cuadrado más alto y por mejores cumplimientos de supuestos, fue el modelo múltiple 2 que usa las variables km, modelo, veh y transmision. Ahora vamos a evaluar el modelo:
¿Cuál será el precio estimado de un carro Kia Cerato, con 92.500 km, modelo 2015 y con transmisión mecánica?
Como los datos que se están usando son cercanos al promedio de todas las variables se espera que la estimación del modelo sea cercana al precio promedio de los carros Kia Cerato que es $49.600.000 COP como se puede ver a continuación:
| Mean_KiaCerato |
|---|
| 49600000 |
| 1 |
|---|
| 50505527 |
Vemos que el modelo estima que un carro con esas características en la ciudad de Cali tendrá un precio promedio de 50.505.527 COP. La predicción tiene una diferencia de $905.527 COP que es bastante baja. Vamos a evaluar el modelo más a detalle con validación cruzada con el método k-fold con 10 folds.
Método con 10 folds: Este método consiste en dividir la base de datos en 10 partes iguales y entrenar el modelo con 9 de esos grupos y se evalúa con el grupo restante, se repite el proceso 10 veces, cambiando cada vez el grupo que se usa como prueba.
## Linear Regression
##
## 129 samples
## 4 predictor
##
## No pre-processing
## Resampling: Cross-Validated (10 fold)
## Summary of sample sizes: 116, 116, 116, 117, 117, 116, ...
## Resampling results:
##
## RMSE Rsquared MAE
## 4814923 0.8446956 3551826
##
## Tuning parameter 'intercept' was held constant at a value of TRUE
Nota: El RMSE y MAE te dicen qué tan lejos, en promedio, están las predicciones del valor real. Al ser aleatoria la validación cruzada, puede que los MAE y RMSE cambien ligeramente en cada prueba
MAE Y RMSE EN PORCENTAJE:
| MAE | RMSE |
|---|---|
| 0.08618 | 0.1188 |
Al hacer la validación cruzada tenemos que los valores que el modelo predice en promedio, se desvían del valor real por unos 3.48 millones de pesos (MAE del 8%), mientras que el error cuadrático medio (RMSE) es del 11%, lo que penaliza más los errores grandes. Esto sugiere que hay algunos valores atípicos (outliers) que están afectando el error global, pero no de forma muy grave.
El modelo de regresión lineal múltiple desarrollado explica aproximadamente el 84% de la variabilidad en el precio de los vehículos Chevrolet Sail y Kia Cerato en la ciudad de Cali, a partir de variables como el modelo (año), tipo de vehículo, transmisión y kilometraje. Esta capacidad explicativa, combinada con errores de predicción relativamente bajos (MAE = 8% y RMSE = 11%), lo convierte en una herramienta útil para varios actores del sector automotor:
Plataformas de compraventa de vehículos usados (como OLX): Estas plataformas podrían integrar este modelo para sugerir precios de publicación realistas a los vendedores, basados en características objetivas del vehículo. Esto reduce la fricción en el proceso de venta y mejora la eficiencia del mercado.
Concesionarios o comercializadoras de autos usados: El modelo permitiría a los concesionarios valorar rápidamente vehículos en proceso de recompra o consignación, ayudando a establecer precios competitivos que maximicen rotación y margen.
Consumidores finales: A través de aplicaciones o herramientas basadas en este modelo, un consumidor podría evaluar si un precio está por encima o por debajo del valor de mercado esperado, lo que promueve decisiones informadas y evita sobrepagos.
Compañías aseguradoras o financieras: Estas entidades podrían usar el modelo como una referencia de valor comercial para vehículos usados, útil en procesos de seguros, créditos prendarios o leasing.