Autor
Francisco Guijarro
Catedrático de Universidad (profesor funcionario a tiempo completo)
Universidad Politécnica de Valencia. fraguima@upvnet.upv.es
Conocer bien los datos facilitará el manejo de los diferentes modelos de valoración basados en IA.
Obtener un bueno modelo de valoración aplicando modelos de machine learning puede requerir un 50% de tiempo para la depuración de datos y otro 50% para la propia modelización.
Además de esto, el presente capítulo nos servirá para realizar una introducción a SPSS y familiarizarnos con su manejo.
Para poder aplicar las diferentes metodologías IA en el ámbito de la valoración de inmuebles, vamos a contar con una base de datos actualizada de apartamentos usados de la ciudad de Bogotá.
El tamaño de la muestra es de algo más de 2.300 apartamentos, con las siguientes variables:
| Variable | Tipo |
|---|---|
| nombre_comun_barrio | texto |
| nombre_barrio_castastral | texto |
| estrato | numérico: 2–6 |
| valor_de_venta | numérico |
| area_construida | numérico |
| numero_de_piso | numérico |
| valor_de_administracion | numérico |
| valor_de_arriendo | numérico |
| area_privada | numérico |
| habitaciones | numérico |
| antiguedad | Entre 0 y 5 / Entre 5 y 10 / Entre 10 y 20 / Mas de 20 / Remodelado |
| banyos | numerico |
| depositos | numerico |
| conjunto_cerrado | Si/No |
| estudio_biblioteca | Si/No |
| area_terraza_balcon | numérico |
| numero_closets | numérico |
| tipo_comedor | Comedor independiente / Sala-comedor |
| tipo_acabado_piso | Alfombra / Balsosa / Ceramica / Laminado / Madera / Marmol / Otro / Porcelanato |
| tipo_instalacion_gas | Natural / Ninguno / Propano |
| tipo_estufa | Electrica / Gas / Mixta |
| tipo_calentador | Caldera / Electrico / Gas / No tiene |
| parqueadero | numérico |
| tipo_parqueadero | Comunal / Independiente / Propio / Servidumbre |
| parqueadero_cubierto | Si/No |
| vigilancia | Si/No |
A continuación exploramos con más detalle estas variables, examinando los valores más comunes y la distribución de los mismos.
\(~\)
Pregunta
1Teniendo en cuenta el número de barrios, ¿crees que podrán emplearse las anteriores variables en un modelo de valoración?
\(~\)
Esta información tiene dos serios problemas para ser considerada en nuestros modelos de valoración.
En primer lugar, tenemos demasiados niveles diferentes (787) dado el número de apartamentos en la base de datos. En segundo lugar, algunos elementos aparecen repetidos pero con diferente formato, lo que hará que el programa los tome como barrios distintos (Altos de Cabrera, ALTOS DE CABRERA) aún tratándose en realidad del mismo.
SPSS -> Analizar -> Estadísticos descriptivos -> Frecuencias
Figura 1. Frecuencia del nombre común del barrio
\(~\)
nombre_barrio_catastral: ACACIAS USASQUEN, ANTIGUO COUNTRY, ATENAS, BELLA SUIZA, etc. Contamos con 330 nombres diferentes de barrios catastrales.
estrato: se han incluido apartamentos usados de los estratos 2 a 6, con las siguientes frecuencias:
| Estrato | 2 | 3 | 4 | 5 | 6 |
|---|---|---|---|---|---|
| Num apartamentos | 46 | 221 | 483 | 496 | 1069 |
Aunque no lo reportamos en los resultados, hemos cruzado el estrato con la variable nombre_barrio_catastral, y no siempre todos los apartamentos en un barrio pertenecen al mismo estrato.
Pregunta
2Teniendo en cuenta el número de apartamentos en cada estrato, ¿será nuestro modelo igual de preciso en cada uno de los estratos?
\(~\)
2 se puede observar un histograma de esta variable. Comprobamos que no sigue una distribución normal, y que la cola de la derecha es mucho más alargada de la que se correspondería con una distribución normal. Esto suele ser bastante habitual en la valoración de inmuebles, donde un porcentaje muy elevado de apartamentos se sitúan con un valor de venta muy próximo a la media, mientras que un porcentaje reducido tienen un valor de venta muy alto, excesivamente elevado para la tendencia central del mercado.SPSS -> Gráficos -> Cuadro de diálogos antiguos -> Histograma
Figura 2. Histograma del valor de venta, junto con la curva teórica de la distribución normal
\(~\)
Figura 3. Histograma del área construida, junto con la curva teórica de la distribución normal
\(~\)
En este caso observamos dos diferencias muy relevantes respecto de los gráficos anteriores. En la Figura 4 podemos ver que el número de apartamentos con esta información es muy reducido. De los 2.315 apartamentos que tenemos en nuestra base de datos, únicamente 354 tienen información sobre el número de piso en que se encuentra.
La otra diferencia es que algunos datos van más allá de no poder ser considerados “normales”. El hecho de encontrar números de piso por encima de 400 nos hace pensar que se tratan de valores erróneos. Ante esto podemos plantearnos dos acciones.
La primera sería eliminar del análisis aquellos apartamentos cuyo número de piso se pueda considerar claramente un error.
La segunda opción, que será la que vamos a elegir, es desechar la variable numero_de_piso por no tener suficientes observaciones. Tengamos en cuenta que sólo disponemos del número de piso para apenas un 15% de los apartamentos, y muchos de los métodos de valoración que podemos emplear asumen que debemos tener información completa para todos los apartamentos. Esto es, que si alguna variable no tiene valor, el método de valoración directamente descarta el apartamento de la muestra. Eso implicaría que si consideramos el número de piso, nuestra muestra pasa de 2.315 apartamentos a tan solo 354.
Figura 4. Histograma del número de piso
\(~\)
Para el valor de administración de nuevo nos encontramos con el problema de valores muy alejados del promedio. Esto no se observa muy bien en el histograma, pero sí en el diagrama de caja.
No obstante, podría ser una variable a considerar ya que en este caso sí tenemos bastantes apartamentos en los que se informa sobre el valor de administración: 2.045.
Figura 5. Histograma del valor de administración
\(~\)
SPSS -> Gráficos -> Cuadros de diálogos antiguos ->
Diagramas de caja -> "Resúmenes para distintas variable"
Figura 6. Diagrama de caja del valor de administración
\(~\)
Ejercicio
3Imaginemos ahora que todos los apartamentos que figuren con un coste de administración superior a 100.000.000 COP son, simplemente, un error a la hora de introducir ese dato (por ejemplo, el de la fila 1826). Si los excluimos del análisis, vemos como ahora sí se observa mucho mejor la distribución de la variable, que antes apenas se podía apreciar tanto en el histograma como en el diagrama de caja.
Vemos como al filtrar los apartamentos con un valor de administración por debajo de los 100 millones COP, sólo quedan apartamentos con un valor de administración por debajo de los 5 millones COP.
Vemos que hemos pasado de 2.045 inmuebles a 2.037. Es decir, que eliminando tan sólo 8 apartamentos conseguimos obtener unos valores que podrían ser considerados “normales”.
Figura 7. Histograma del valor de administración, una vez filrados los apartamentos con valores anómalos
\(~\)
Figura 8. Diagrama de caja del valor de administración, una vez filrados los apartamentos con valores anómalos
\(~\)
Vemos en la Figura 9 que el principal problema de esta variable es que tenemos muy pocos apartamentos que brinden información sobre esta variable.
Figura 9. Histograma del valor de arriendo
\(~\)
Atendiendo al gráfico del histograma, podemos ver que la variable area_privada tiene un comportamiento similar al de area_construida. Eso sí, tenemos menos apartamentos que informan sobre el área privada (2.087) frente a los apartamentos para los que sí tenemos el área contruida (2.315).
Figura 10. Histograma del área privada
\(~\)
Obviamente, ambas variables van a estar muy relacionadas entre sí. En la Figura 11 hemos representado mediante un gráfico de dispersión la similitud entre ambas variables.
Es de suponer que el área construida siempre será mayor o igual que el área privada. Sin embargo, esto no siempre ocurre con los datos que tenemos. El 2,7% de los apartamentos presentan un área privada mayor que el área construida, por lo que podemos suponer que se trata de algún error a la hora de introducir los datos.
Figura 11. Diagrama de dispersión entre el área construida y el área privada
\(~\)
Veremos, al aplicar los modelos de IA, si ambas variables entran en la función de valoración o realmente sólo contamos con una de ellas. Cuando dos o más variables están muy correlacionadas, es muy probable que sólo una de ellas entre en el modelo de valoración. Esto es así porque el elevado grado de correlación hace que conociendo el valor de una de estas variables, prácticamente sepamos el valor de la otra. Expresado de otra forma: si se incluye una de las variables en el modelo de valoración, es como si estuviéramos incluyendo la otra, de forma que al considerar una no merece la pena incluir la otra, pues no aportaría información nueva relevante.
En la siguiente tabla vemos la correlación entre el valor de venta y las dos variables ligadas al área, así como el alto grado de correlación entre estas dos últimas. Veremos con más detalle el análisis de correlación en el siguiente epígrafe.
Ya podemos observar la importancia que tiene el área en el valor de venta de la vivienda. La correlación es muy elevada tanto para el área construida como para el área privada. Podemos pensar en emplear el área privada en nuestros modelos de valoración, de forma preferente al área construida ya que su coeficiente de correlación es mayor.
Pero cuidado: si procedemos de esa forma estamos descartando aproximadamente un 10% de la muestra, puesto que no para todos los apartamentos tenemos información sobre el área privada.
Figura 12. Correlación entre las variables valor de venta, área construida y área privada
\(~\)
¿Podemos asumir que el área privada seguiría siendo importante a la hora de explicar los valores de venta una vez se haya considerado el área construida? Esta respuesta la podemos obtener a través del análisis de correlación bivariada.
En este análisis, se calcula la correlación entre dos variables una vez descontado el efecto de una tercera. En nuestro caso, hemos calculado la correlación entre el valor de venta y el área privada, una vez descontado el efecto del área contruida. Podemos comprobar como la correlación entre valor y área privada deja de ser estadísticamente significativo, aún siendo mayor que cero. Esto indica que la inclusión del área privada en un modelo de regresión no aportaría nada si previamente se ha incluido la variable área construida.
Figura 13. Correlación bivariada entre valor de venta y área privada, controlando mediante la variable área construida
\(~\)
Aunque no es una variable que viene definida en la base de datos de apartamento, podemos calcularla fácilmente dividiendo el valor de venta por el área construida.
En la Figura 14 observamos que la mayor parte de los apartamentos se sitúan sobre una de las barras, mientras que por la derecha aparecen valores muy extremos, excepcionalmente caros.
¿Qué nos está indicando esto? Que en nuestra base de datos muy probablemente tengamos apartamentos en los que o bien ha habido un error a la hora de transcribir el valor de venta, o bien la superficie construida contiene un error. Este tipo de situaciones pueden ser muy perjudiciales a la hora de diseñar un modelo de valoración IA, pues la presencia de estos datos atípicos o outliers pueden afectar gravemente a los resultados. Nuestra tarea consistirá en limpiar la base de datos antes de lanzar el modelo IA.
Figura 14. Histograma de la variable valor_de_venta_m2
\(~\)
Ejercicio
4Intentar identificar los valores extremos de la nueva variable
valor_de_venta_m2a través de un histograma de frecuencias. Si excluimos dichos valores, ¿sigue la variablevalor_de_venta_m2una distribución aproximadamente normal?
También hemos obtenido una tabla cruzada entre el valor de venta por metro cuadrado construido y el estrato, de forma que podamos conocer las diferencias medias en valor unitario según el estrato donde se situe el inmueble.
Lo que comprobamas en la tabla es que el valor promedio del metro cuadrado sube con el estrato, como era de esperar. No obstante, estas diferencias serán más afinadas y precisas cuando eliminemos los valores atípicos que hemos comentado anteriormente.
SPSS -> Analizar -> Tablas -> Tablas personalizadas
Figura 15. Tabla cruzada entre valor_de_venta_m2 y estrato. Permite conocer el valor medio del metro cuadrato constuido por estrato
\(~\)
Respecto de las habitaciones, únicamente tenemos dos apartamentos en los que no figura esa información.
Figura 16. Frecuencia del número de habitaciones
\(~\)
Como única observación, tenemos un pequeño porcentaje de apartamentos en los que no se indica la antiguedad, así como otro pequeño porcentaje en el que se indican que están remodelados.
Puede resultar interesante conocer cómo se distribuye el valor de venta en función de esta antiguedad, y si hay diferencias en la antiguedad según el estrato.
Es difícil extraer alguna conclusión de las siguientes tablas. No se puede afirmar que exista una relación clara entre la antiguedad y el estrato donde se ubican los apartamentos.
Y tampoco se puede afirmar que necesariamente las viviendas más recientes son las más caras. Quizá también pueda deberse a una variación de la superficie de las viviendas a lo largo del tiempo, o simplemente que la relación entre valor de venta y antiguedad deba ser considerada añadiendo otras variables que expliquen el comportamiento del precio.
Quizá el análisis mejoraría si dispusiéramos de la edad de las viviendas, en lugar de conocer el rango de antigüedad en el que se situa. O también puede ocurrir que los datos publicados en el portal no sean precisos.
Figura 17. Tabla de frecuencias para la variables antiguedad
\(~\)
Figura 18. Tabla cruzada entre la antiguedad y el estrato
\(~\)
Figura 19. Tabla cruzada entre la antiguedad y el valor de venta
\(~\)
Figura 20. Tabla de frecuencias para la variable banyos
\(~\)
El problema de esta variable es que tiene un porcentaje de valores ausentes muy grande, lo que dificulta su empleo en cualquier metodología de valoración.
Figura 21. Tabla de frecuencias para la variable depositos
\(~\)
Figura 22. Tabla de frecuencias para la variable conjunto_cerrado
\(~\)
SPSS -> Gráficos -> Cuadros de diálogo antiguos -> Circular
Figura 23. Gráfico de tarta para la variable conjunto_cerrado
\(~\)
Al igual que en el caso de la variable conjunto_cerrado, también contamos con información sobre estudio_biblioteca en el 100% de los apartamentos.
Figura 24. Gráfico de tarta para la variable estudio_biblioteca
\(~\)
De la siguiente figura podemos concluir que la mayoría de los inmuebles no tienen terraza o balcón. A diferencia de otras variables en las que directamente no tenemos información, en este caso sí podríamos considerarla en un modelo de valoración, ya que los valores o son estrictamente positivos (apartamento con balcón o terraza) o son cero (apartamento sin balcón ni terraza).
Figura 25. Diagrama de caja para la variable area_terraza_balcon
\(~\)
Un elevado porcentaje de casos en los que no se reporta el número de closets. Podría incluirse en los modelos de valoración, pero para ello tendríamos que asumir explícitamente que los apartamentos en los que no se reportan closets deben ser considerados con un valor 0 en dicha variable.
Figura 26. Frecuencias de la variable número de closets
\(~\)
Figura 27. Frecuencias de la variable tipo_comedor
\(~\)
Figura 28. Frecuencias de la variable tipo_acabado_piso
\(~\)
Figura 29. Frecuencias de la variable tipo_instalacion_gas
\(~\)
Figura 30. Frecuencias de la variable tipo_estufa
\(~\)
Figura 31. Frecuencias de la variable tipo_calentador
\(~\)
Figura 32. Frecuencias de la variable parqueadero
\(~\)
Figura 33. Frecuencias de la variable tipo_parqueadero
\(~\)
Figura 34. Frecuencias de la variable parqueadero_cubierto
\(~\)
Variable que informa de si el apartamento se encuentra ubicado en un conjunto con vigilancia. Observando lo valores de las tablas vemos que 1) no es muy común que el conjunto cuente con vigilancia, y 2) el nivel de vigilancia no depende del estrato.
Figura 35. Frecuencias de la variable vigilancia
\(~\)
Figura 36. Tabla cruzada entre las variables vigilancia y estrato
\(~\)
Un aspecto importante antes de avanzar en un modelo de valoración IA es estudiar el grado de correlación entre las variables.
La correlación de Pearson es la más utilizada para cuantificar el grado de relación entre variables numéricas:
\(\rho_{xy} = \frac{\sigma_{xy}}{\sigma_x \sigma_y} \in [-1,+1]\)
En la Figura 37 aparecen reflejados algunos conceptos de la correlación:
Podemos disinguir entre *correlación positiva y negativa**.
Si una variable no está correlacionada con el precio, con toda seguridad no aparecerá en el modelo de valoración.
También es importante diferenciar entre una correlación fuerte y una débil. Si el precio está fuertemente correlacionado con una variable, a buen seguro esa variable aparecerá en el modelo de valoración.
Por último, los modelos tradicionales de regresión pueden tener dificultades para encontrar relaciones no lineales e incluirlas en el modelo de valoración. Es ahí donde los modelos IA pueden tener un éxito considerable.
Figura 37. Esquema general del concepto de correlación
Ejercicio
5Representar en un diagrama de dispersión el valor de venta (Y) frente al área construida (X). ¿Qué tipo de correlación se observa? Hacer lo mismo entre valor de venta (Y) y area_terraza_balcon (X).
Gráficos -> Cuadros de diálogo antiguos -> Dispersión/puntos
\(~\)
Figura 38. Diagrama de dispersión entre valor de venta y área construida
Ejercicio
6Construir las variables
log_valor_de_ventaylog_area_construiday representar la siguiente figura.
\(~\)
Figura 39. Diagrama de dispersión entre el logaritmo del valor de venta y el logaritmo del área construida
\(~\)
Ejercicio
7Obtener la mariz de correlaciones entre
valor_de_venta,area_construida,log_valor_de_ventaylog_area_construida.
Figura 40. Matriz de correlaciones para valor de venta, área construida, logaritmo del valor de venta, y logaritmo del área construida
Para entender que el análisis de correlación de Pearson solo captura relaciones lineales, pensemos en el ejemplo de correlación entre area_construida y log_area_construida.
Ciertamente, a partir de una variable podemos obtener la otra de forma precisa, exacta. Pero ello no implica que la correlación (LINEAL) sea +1.
\(~\)
Ejercicio
8Hemos visto en las figuras anteriores que al representar la variable
log_valor_de_ventafrente alog_area_construida, unos pocos apartamentos conlog_area_construidapróximo al valor 0 pueden distorsionar gravemente el coeficiente de correlación. De ahí que la mejora de este coeficiente de correlación frente al obtenido entrevalor_de_ventayarea_construidasea pequeña. El ejercicio consiste en filtrar esos datos atípicos, y calcular la correlación de nuevo excluyendo esos valores. Pista: los apartamentos atípicos tienen un área de un metro cuadrado.
Figura 41. Matriz de correlaciones para valor de venta, área construida, logaritmo del valor de venta, y logaritmo del área construida una vez eliminaos unos apartamentos con un área construida muy baja
\(~\)
Una vez considerado lo anterior, observemos la matriz de correlaciones entre el valor de venta y el resto de variables numéricas en la Figura 42. Las no numéricas quedan fuera.
Se trata de una matriz simétrica, cuyos coeficientes nos indican si la correlación es significativa (desde un punto de vista estadístico) con un nivel de confianza del 95% o del 99%.
Figura 42. Tabla de correlaciones entre las variables numéricas
\(~\)
Ejercicio
9¿Cuál es el significado de los símbolos * y ** al pie de la matriz de correlaciones?
\(~\)
Puesto que nuestro objetivo es obtener un modelo de valoración que explique el valor de venta, nos podemos limitar a analizar la primera columna de la matriz de correlaciones.
Aquí podemos evidenciar que no todas las variables son significativas, y que entre las significativas las hay con correlación fuerte y con correlación débil.
En cualquier caso, los elevados valores obtenidos auguran un buen modelo de valoración. Por ejemplo, si la correlación entre el valor de venta y el área construida es de 0,836, esto implica que si hiciéramos un modelo de regresión entre las dos variables obtendríamos un \(R^2\) del 0.698896.
¿Es este valor suficiente para un modelo de valoración? Claramente no, pues al menos se requiere un 90% (0.9) en los modelos de regresión. Sin embargo, podemos añadir más variables que vayan mejorando ese porcentaje hasta alcanzar el valor mínimo deseado.
\(~\)
Figura 43. Detalle de la matriz de correlaciones. Correlación entre el valor de venta y el resto de variables numéricas
\(~\)
Pero además tengamos en cuenta dos cuestiones muy importantes que sin duda mejorarán el modelo de valoración por IA:
La correlación de Pearson, que es la que hemos calculado, únicamente recoge la relación lineal entre variables. Si además de ésta existe alguna relación no lineal (por ejemplo entre valor de venta y estrato), los modelos de IA podrán recoger este tipo de relaciones mucho mejor que los modelos de regresión.
A estas variables numéricas hay que añadir otras no numéricas, como la antiguedad, que producirán una mejora en la explicación del valor de venta, mejorando la precisión de los modelos de valoración IA.
La correlación parcial permite conocer la relación entre dos variables dada una tercera (o varias terceras variables).
Cuando dos o más variables están muy correlacionadas, es muy probable que sólo una de ellas entre en el modelo de valoración. Esto es así porque el elevado grado de correlación hace que conociendo el valor de una de estas variables, prácticamente sepamos el valor de la otra. Expresado de otra forma: si se incluye una de las variables en el modelo de valoración, es como si estuviéramos incluyendo la otra, de forma que al considerar una no merece la pena incluir la otra, pues no aportaría información nueva relevante.
En la siguiente tabla vemos la correlación entre el valor de venta y las dos variables ligadas al área (area_construida y area_privada), así como el alto grado de correlación entre estas dos últimas.
Ya podemos observar la importancia que tiene el área en el valor de venta de la vivienda. La correlación es muy elevada tanto para el área construida como para el área privada. Podemos pensar en emplear el área privada en nuestros modelos de valoración, de forma preferente al área construida, ya que su coeficiente de correlación es mayor. Pero cuidado: si procedemos de esa forma estamos descartando aproximadamente un 10% de la muestra, puesto que no para todos los apartamentos tenemos información sobre el área privada.
Figura 44. Correlación entre las variables valor de venta, área construida y área privada
\(~\)
¿Podemos asumir que el área privada seguiría siendo importante a la hora de explicar los valores de venta una vez se haya considerado el área construida? Esta respuesta la podemos obtener a través del análisis de correlación parcial.
En este análisis, se calcula la correlación entre dos variables una vez descontado el efecto de una tercera. En nuestro caso, hemos calculado la correlación entre el valor de venta y el área privada, una vez descontado el efecto del área contruida. Podemos comprobar como la correlación entre valor y área privada deja de ser estadísticamente significativo, aún siendo mayor que cero. Esto indica que la inclusión del área privada en un modelo de regresión no aportaría nada si previamente se ha incluido la variable área construida.
Figura 45. Correlación parcial entre valor de venta y área privada, controlando mediante la variable área construida
Ejercicio
10Repetir los cálculos anteriores pero utilizando las variables en forma de logaritmo:
log_valor_de_venta,log_area_construidaylog_area_privada.
Ejercicio
11Comprobar qué ocurre con el anterior ejercicio si se repite pero excluyendo los apartamentos con
area_construidaigual a 1 metro cuadrado.
\(~\)
Ejercicio
12Obtener un diagrama de caja entre el valor unitario y el estrato. Para ello habrá que crear la variable valor_m2 a través de
Transformar -> Calcular variable. El resultado debe servir para evidenciar que pese a haber eliminado algunos apartamentos por atípicos, será necesario afinar un poco más en capítulos posteriores.
SPSS -> Gráficos -> Cuadros de diálogo antiguos -> Diagramas de caja -> Simples, Resúmenes para distintas variables
Ejercicio
13Obtener la correlación de Pearson entre
valor_de_venta,area_construida,dormitoriosyparqueaderos. Calcular posterioremente la correlación parcial entrevalor_de_venta,dormitoriosyparqueaderos, eliminando el efecto dearea_constuida. Interpretar los resultados.