Melbourne Housing Market

Prediccion del precio de vivienda con preprocesado mixto, Target Encoding y Random Forest.

Mi Rol
Data Scientist
Equipo
Eloy Garcia Martinez (yo)
Tecnologias
Python Pandas scikit-learn TargetEncoder Random Forest Jupyter
Timeline
2026

Contexto

Este ejercicio usa el dataset de viviendas de Melbourne para estimar el precio de venta en funcion de variables estructurales y de localizacion. El problema se aborda como una regresion supervisada con un pipeline completo de preprocesado y ajuste del modelo.

El notebook combina analisis exploratorio, filtrado de outliers, transformacion de variables categoricas de alta cardinalidad y entrenamiento de un modelo de bosque aleatorio optimizado con GridSearchCV.

Que se hace en el notebook

  • Carga de datos desde Kaggle y revision inicial del dataset.
  • Matriz de correlacion de variables numericas para detectar relaciones utiles.
  • Filtrado del 1% inferior y superior del precio para reducir outliers extremos.
  • Eliminacion de columnas con alta cardinalidad o ruido (por ejemplo Address y Date).
  • Separacion train/test y limpieza de nulos en la variable objetivo.
  • Preprocesado con ColumnTransformer: imputacion + TargetEncoder para categoricas y escalado para numericas.
  • Entrenamiento de RandomForestRegressor dentro de Pipeline.
  • Tuning de hiperparametros con GridSearchCV y evaluacion final con R2 y RMSE en validacion cruzada.

Decisiones tecnicas clave

  • TargetEncoder en lugar de One-Hot para evitar explosion de columnas en variables categoricas con muchas categorias.
  • Recorte por cuantiles (1%-99%) para reducir el impacto de propiedades extremadamente caras o baratas.
  • Random Forest por su robustez frente a no linealidad e interacciones entre variables inmobiliarias.
  • GridSearchCV para ajustar profundidad, numero de arboles y criterios minimos de division/hoja.

Resultados y conclusiones

  • El modelo logra una capacidad predictiva util para estimar precio sobre datos no vistos.
  • La validacion cruzada con RMSE aporta una lectura mas interpretable del error medio en unidades monetarias.
  • El filtrado de outliers y el encodeo por target mejoran la estabilidad del entrenamiento.
  • Como siguiente mejora, se puede comparar con XGBoost o LightGBM y validar por periodos temporales para simular escenario real.

Licencia y creditos

Dataset: Melbourne Housing Market en Kaggle. Proyecto realizado con fines formativos.

© 2026 Eloy Garcia Martinez.