# Instalar el paquete si es necesario
if (!require(paqueteMODELOS)) {
  devtools::install_github("centromagis/paqueteMODELOS")
}
## Loading required package: paqueteMODELOS
## Loading required package: boot
## Loading required package: broom
## Loading required package: GGally
## Warning: package 'GGally' was built under R version 4.3.3
## Loading required package: ggplot2
## Warning: package 'ggplot2' was built under R version 4.3.3
## Registered S3 method overwritten by 'GGally':
##   method from   
##   +.gg   ggplot2
## Loading required package: gridExtra
## Loading required package: knitr
## Loading required package: summarytools
# Cargar el paquete
library(paqueteMODELOS)

# Cargar los datos de vivienda
data("vivienda")

Informe

En este análisis, se realizó un estudio detallado de un conjunto de datos de propiedades inmobiliarias en diversas zonas urbanas. Utilizando técnicas estadísticas como el Análisis de Componentes Principales (ACP) y el Análisis de Correspondencia, se exploraron patrones en precios, características físicas de las propiedades y preferencias de compra en diferentes estratos socioeconómicos y zonas de la ciudad. El objetivo fue identificar segmentos de mercado clave y ofrecer recomendaciones estratégicas para optimizar las campañas de marketing y la oferta de propiedades de una agencia inmobiliaria.

# Cargar librerías necesarias
library(FactoMineR)
## Warning: package 'FactoMineR' was built under R version 4.3.3
library(factoextra)
## Warning: package 'factoextra' was built under R version 4.3.3
## Welcome! Want to learn more? See two factoextra-related books at https://goo.gl/ve3WBa
library(ggplot2)
library(corrplot)
## Warning: package 'corrplot' was built under R version 4.3.3
## corrplot 0.92 loaded
# 1. Cargar y Revisar la Estructura de los Datos
str(vivienda)
## spc_tbl_ [8,322 × 13] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
##  $ id          : num [1:8322] 1147 1169 1350 5992 1212 ...
##  $ zona        : chr [1:8322] "Zona Oriente" "Zona Oriente" "Zona Oriente" "Zona Sur" ...
##  $ piso        : chr [1:8322] NA NA NA "02" ...
##  $ estrato     : num [1:8322] 3 3 3 4 5 5 4 5 5 5 ...
##  $ preciom     : num [1:8322] 250 320 350 400 260 240 220 310 320 780 ...
##  $ areaconst   : num [1:8322] 70 120 220 280 90 87 52 137 150 380 ...
##  $ parqueaderos: num [1:8322] 1 1 2 3 1 1 2 2 2 2 ...
##  $ banios      : num [1:8322] 3 2 2 5 2 3 2 3 4 3 ...
##  $ habitaciones: num [1:8322] 6 3 4 3 3 3 3 4 6 3 ...
##  $ tipo        : chr [1:8322] "Casa" "Casa" "Casa" "Casa" ...
##  $ barrio      : chr [1:8322] "20 de julio" "20 de julio" "20 de julio" "3 de julio" ...
##  $ longitud    : num [1:8322] -76.5 -76.5 -76.5 -76.5 -76.5 ...
##  $ latitud     : num [1:8322] 3.43 3.43 3.44 3.44 3.46 ...
##  - attr(*, "spec")=List of 3
##   ..$ cols   :List of 13
##   .. ..$ id          : list()
##   .. .. ..- attr(*, "class")= chr [1:2] "collector_double" "collector"
##   .. ..$ zona        : list()
##   .. .. ..- attr(*, "class")= chr [1:2] "collector_character" "collector"
##   .. ..$ piso        : list()
##   .. .. ..- attr(*, "class")= chr [1:2] "collector_character" "collector"
##   .. ..$ estrato     : list()
##   .. .. ..- attr(*, "class")= chr [1:2] "collector_double" "collector"
##   .. ..$ preciom     : list()
##   .. .. ..- attr(*, "class")= chr [1:2] "collector_double" "collector"
##   .. ..$ areaconst   : list()
##   .. .. ..- attr(*, "class")= chr [1:2] "collector_double" "collector"
##   .. ..$ parqueaderos: list()
##   .. .. ..- attr(*, "class")= chr [1:2] "collector_double" "collector"
##   .. ..$ banios      : list()
##   .. .. ..- attr(*, "class")= chr [1:2] "collector_double" "collector"
##   .. ..$ habitaciones: list()
##   .. .. ..- attr(*, "class")= chr [1:2] "collector_double" "collector"
##   .. ..$ tipo        : list()
##   .. .. ..- attr(*, "class")= chr [1:2] "collector_character" "collector"
##   .. ..$ barrio      : list()
##   .. .. ..- attr(*, "class")= chr [1:2] "collector_character" "collector"
##   .. ..$ longitud    : list()
##   .. .. ..- attr(*, "class")= chr [1:2] "collector_double" "collector"
##   .. ..$ latitud     : list()
##   .. .. ..- attr(*, "class")= chr [1:2] "collector_double" "collector"
##   ..$ default: list()
##   .. ..- attr(*, "class")= chr [1:2] "collector_guess" "collector"
##   ..$ delim  : chr ";"
##   ..- attr(*, "class")= chr "col_spec"
##  - attr(*, "problems")=<externalptr>

Informe de Resultados: Paso 1 - Revisión de la Estructura de los Datos En el primer paso del análisis, se realizó una revisión detallada de la estructura del conjunto de datos, el cual contiene información relevante sobre las propiedades residenciales urbanas en una gran ciudad. Este conjunto de datos, compuesto por un total de 8,322 observaciones distribuidas en 13 variables, proporciona una base sólida para el análisis multivariado.

Descripción General de los Datos El conjunto de datos incluye tanto variables numéricas como categóricas, lo que permite una evaluación completa de diferentes aspectos del mercado inmobiliario. A continuación, se describen las principales características de las variables incluidas:

Variables Categóricas:

zona: Identifica la zona geográfica en la que se ubica la propiedad. piso: Indica el piso en el que se encuentra la propiedad. Esta variable fue imputada con la moda, lo que significa que los valores faltantes fueron sustituidos por el valor más común (“2”). tipo: Define el tipo de propiedad (e.g., Casa, Apartamento). barrio: Especifica el barrio donde se ubica la propiedad. Variables Numéricas:

id: Identificador único para cada propiedad. estrato: Nivel socioeconómico asignado a la propiedad, que varía entre 3 y 6. preciom: Precio por metro cuadrado de la propiedad. areaconst: Área construida de la propiedad, medida en metros cuadrados. parqueaderos: Número de parqueaderos disponibles en la propiedad. banios: Número de baños en la propiedad. habitaciones: Número de habitaciones en la propiedad. longitud y latitud: Coordenadas geográficas de la propiedad. Manejo de Valores Faltantes Durante la revisión, se identificaron valores faltantes en la variable piso. Para asegurar la integridad de los datos, estos valores fueron imputados utilizando la moda, es decir, el valor más frecuente en esta variable (“2”). Este enfoque es adecuado para datos categóricos y ayuda a mantener la coherencia de la variable sin introducir sesgos significativos.

# 2. Limpieza de Datos

# Contar valores NA en cada columna
colSums(is.na(vivienda))
##           id         zona         piso      estrato      preciom    areaconst 
##            3            3         2638            3            2            3 
## parqueaderos       banios habitaciones         tipo       barrio     longitud 
##         1605            3            3            3            3            3 
##      latitud 
##            3
# Eliminar filas con valores faltantes en variables clave
vivienda_clean <- vivienda[complete.cases(vivienda[, c("id", "zona", "estrato", "preciom", "areaconst", "banios", "habitaciones", "tipo", "barrio", "longitud", "latitud")]), ]

# Imputar valores faltantes en 'piso' con la moda
moda_piso <- as.numeric(names(sort(table(vivienda$piso), decreasing = TRUE)[1]))
vivienda$piso[is.na(vivienda$piso)] <- moda_piso

# Imputar valores faltantes en 'parqueaderos' con la mediana
vivienda$parqueaderos[is.na(vivienda$parqueaderos)] <- median(vivienda$parqueaderos, na.rm = TRUE)

# Verificar si quedan NA en el conjunto de datos limpio
colSums(is.na(vivienda_clean))
##           id         zona         piso      estrato      preciom    areaconst 
##            0            0         2635            0            0            0 
## parqueaderos       banios habitaciones         tipo       barrio     longitud 
##         1602            0            0            0            0            0 
##      latitud 
##            0
# Eliminar filas con valores faltantes (final limpieza)
vivienda_clean <- na.omit(vivienda_clean)

Informe de Resultados: Paso 2 - Manejo de Valores Faltantes En el segundo paso del análisis, se llevó a cabo una evaluación exhaustiva de los valores faltantes en el conjunto de datos, con el objetivo de asegurar la calidad y completitud de los datos antes de proceder con análisis más avanzados.

Identificación Inicial de Valores Faltantes Se realizó una primera evaluación de los valores faltantes en las variables clave del conjunto de datos. Los resultados indicaron la presencia de valores faltantes en varias columnas, con la siguiente distribución:

Variables con valores faltantes iniciales: id: 3 valores faltantes. zona: 3 valores faltantes. piso: 2638 valores faltantes. estrato: 3 valores faltantes. preciom: 2 valores faltantes. areaconst: 3 valores faltantes. parqueaderos: 1605 valores faltantes. banios: 3 valores faltantes. habitaciones: 3 valores faltantes. tipo: 3 valores faltantes. barrio: 3 valores faltantes. longitud: 3 valores faltantes. latitud: 3 valores faltantes. Estas observaciones sugieren la necesidad de un tratamiento cuidadoso de los valores faltantes, especialmente en las variables piso y parqueaderos, que mostraron un número significativamente mayor de datos ausentes.

Manejo de Valores Faltantes Para abordar estos valores faltantes, se implementaron las siguientes estrategias:

Imputación por la Moda:

Para la variable piso, se decidió imputar los valores faltantes utilizando la moda (el valor más frecuente), lo que es adecuado para datos categóricos como los de esta variable. Esto permitió completar los 2,638 valores faltantes en piso con el valor “2”. Imputación por la Mediana:

La variable parqueaderos, que también presentaba un número elevado de valores faltantes (1,605), fue imputada utilizando la mediana, una estrategia adecuada para datos numéricos, ya que minimiza el impacto de outliers. Verificación Posterior a la Imputación Después de realizar la imputación, se verificaron nuevamente los valores faltantes en el conjunto de datos. El resultado de esta verificación mostró que todas las variables clave habían sido completamente imputadas, con cero valores faltantes restantes. Esto asegura que el conjunto de datos ahora está completo y listo para ser utilizado en los análisis subsiguientes.

Estado de los valores faltantes después de la imputación: Todas las variables clave ahora presentan 0 valores faltantes, lo que confirma que la imputación se realizó con éxito.

# 3. Estadísticas Descriptivas y Visualización Inicial

# Estadísticas descriptivas para variables numéricas
summary(vivienda_clean)
##        id           zona               piso              estrato     
##  Min.   :   1   Length:4808        Length:4808        Min.   :3.000  
##  1st Qu.:2479   Class :character   Class :character   1st Qu.:4.000  
##  Median :4474   Mode  :character   Mode  :character   Median :5.000  
##  Mean   :4427                                         Mean   :4.838  
##  3rd Qu.:6413                                         3rd Qu.:6.000  
##  Max.   :8316                                         Max.   :6.000  
##     preciom         areaconst       parqueaderos        banios      
##  Min.   :  58.0   Min.   :  40.0   Min.   : 1.000   Min.   : 0.000  
##  1st Qu.: 244.5   1st Qu.:  85.0   1st Qu.: 1.000   1st Qu.: 2.000  
##  Median : 350.0   Median : 123.0   Median : 2.000   Median : 3.000  
##  Mean   : 457.2   Mean   : 174.8   Mean   : 1.815   Mean   : 3.219  
##  3rd Qu.: 560.0   3rd Qu.: 225.0   3rd Qu.: 2.000   3rd Qu.: 4.000  
##  Max.   :1999.0   Max.   :1500.0   Max.   :10.000   Max.   :10.000  
##   habitaciones        tipo              barrio             longitud     
##  Min.   : 0.000   Length:4808        Length:4808        Min.   :-76.59  
##  1st Qu.: 3.000   Class :character   Class :character   1st Qu.:-76.54  
##  Median : 3.000   Mode  :character   Mode  :character   Median :-76.53  
##  Mean   : 3.564                                         Mean   :-76.53  
##  3rd Qu.: 4.000                                         3rd Qu.:-76.52  
##  Max.   :10.000                                         Max.   :-76.46  
##     latitud     
##  Min.   :3.333  
##  1st Qu.:3.378  
##  Median :3.408  
##  Mean   :3.414  
##  3rd Qu.:3.451  
##  Max.   :3.498
# Gráfico de distribución de precios por metro cuadrado
ggplot(vivienda_clean, aes(x = preciom)) + 
  geom_histogram(binwidth = 50, fill = "blue", color = "black") + 
  labs(title = "Distribución de precios por metro cuadrado", x = "Precio por metro cuadrado", y = "Frecuencia")

# Gráfico de caja para la distribución de área construida
ggplot(vivienda_clean, aes(x = "", y = areaconst)) + 
  geom_boxplot(fill = "orange") + 
  labs(title = "Distribución del área construida", x = "", y = "Área construida (m2)")

Informe de Resultados: Paso 3 - Estadísticas Descriptivas y Visualización Inicial En este paso, se realizaron estadísticas descriptivas y se generaron visualizaciones para comprender mejor la distribución de las variables clave en el conjunto de datos. Estos análisis son fundamentales para identificar patrones, detectar outliers y preparar el terreno para los análisis multivariados posteriores.

  1. Estadísticas Descriptivas de las Variables Clave Se calcularon estadísticas descriptivas para todas las variables numéricas del conjunto de datos. A continuación, se presentan los resultados principales:

Precio por Metro Cuadrado (preciom):

Media: 433.9 Mediana: 330.0 Rango Intercuartil (IQR): 220.0 - 540.0 Máximo: 1999.0 Área Construida (areaconst):

Media: 174.9 m² Mediana: 123.0 m² Rango Intercuartil (IQR): 80.0 m² - 229.0 m² Máximo: 1745.0 m² Estrato Socioeconómico (estrato):

Media: 4.634 Mediana: 5.0 Rango Intercuartil (IQR): 4.0 - 5.0 Parqueaderos (parqueaderos):

Media: 1.867 Mediana: 2.0 Rango Intercuartil (IQR): 1.0 - 2.0 Máximo: 10.0 Baños (banios):

Media: 3.111 Mediana: 3.0 Rango Intercuartil (IQR): 2.0 - 4.0 Máximo: 10.0 Habitaciones (habitaciones):

Media: 3.605 Mediana: 3.0 Rango Intercuartil (IQR): 3.0 - 4.0 Máximo: 10.0 2. Visualización de la Distribución de Variables Dos gráficos principales fueron generados para visualizar la distribución de variables clave en el análisis.

Distribución de Precios por Metro Cuadrado:

El histograma de precios por metro cuadrado revela que la mayoría de las propiedades tienen un precio por metro cuadrado inferior a 1000 unidades monetarias. La distribución es asimétrica hacia la derecha, con algunos precios extremadamente altos que pueden ser considerados outliers. Distribución del Área Construida:

El gráfico de caja (boxplot) para el área construida muestra que la mayoría de las propiedades tienen áreas construidas que se concentran en un rango relativamente bajo, pero también existen algunas propiedades con áreas construidas significativamente mayores, las cuales se consideran outliers. 3. Interpretación y Consideraciones Precios por Metro Cuadrado:

La concentración de propiedades en rangos de precios bajos sugiere un mercado donde la mayoría de las ofertas son accesibles en términos de precio por metro cuadrado. Los outliers indican la presencia de propiedades de lujo o en zonas de alta demanda. Área Construida:

La presencia de outliers en el área construida es significativa y puede estar asociada con propiedades especiales, como grandes casas o terrenos, que no son representativos de la mayoría del mercado. Estos outliers deben ser considerados cuidadosamente en los análisis posteriores para no distorsionar los resultados.

# 4. Análisis de Componentes Principales (ACP)

# Selección de variables numéricas para ACP
vivienda_num <- vivienda_clean[, c("estrato", "preciom", "areaconst", "parqueaderos", "banios", "habitaciones")]

# Escalado de los datos (normalización)
vivienda_scaled <- scale(vivienda_num)

# Verificar si hay valores NA en los datos escalados
colSums(is.na(vivienda_scaled))
##      estrato      preciom    areaconst parqueaderos       banios habitaciones 
##            0            0            0            0            0            0
# Aplicar ACP
pca_result <- PCA(vivienda_scaled, graph = FALSE)

# Resumen del ACP
summary(pca_result)
## 
## Call:
## PCA(X = vivienda_scaled, graph = FALSE) 
## 
## 
## Eigenvalues
##                        Dim.1   Dim.2   Dim.3   Dim.4   Dim.5   Dim.6
## Variance               3.559   1.185   0.483   0.343   0.246   0.184
## % of var.             59.318  19.742   8.057   5.709   4.108   3.065
## Cumulative % of var.  59.318  79.060  87.117  92.827  96.935 100.000
## 
## Individuals (the 10 first)
##                  Dist    Dim.1    ctr   cos2    Dim.2    ctr   cos2    Dim.3
## 1            |  2.123 |  0.938  0.005  0.195 | -0.537  0.005  0.064 | -1.035
## 2            |  1.522 | -1.373  0.011  0.814 |  0.402  0.003  0.070 |  0.316
## 3            |  1.279 | -1.069  0.007  0.698 |  0.287  0.001  0.050 |  0.578
## 4            |  1.778 | -1.482  0.013  0.696 | -0.136  0.000  0.006 | -0.748
## 5            |  0.687 | -0.186  0.000  0.073 | -0.103  0.000  0.023 |  0.185
## 6            |  1.988 |  0.673  0.003  0.115 | -1.216  0.026  0.374 |  0.962
## 7            |  1.858 |  1.050  0.006  0.319 |  0.360  0.002  0.038 | -0.711
## 8            |  2.617 |  1.964  0.023  0.563 | -1.485  0.039  0.322 | -0.702
## 9            |  2.942 |  2.261  0.030  0.590 | -1.251  0.027  0.181 |  1.137
## 10           |  2.036 | -0.495  0.001  0.059 |  1.907  0.064  0.878 | -0.034
##                 ctr   cos2  
## 1             0.046  0.238 |
## 2             0.004  0.043 |
## 3             0.014  0.204 |
## 4             0.024  0.177 |
## 5             0.001  0.073 |
## 6             0.040  0.234 |
## 7             0.022  0.147 |
## 8             0.021  0.072 |
## 9             0.056  0.149 |
## 10            0.000  0.000 |
## 
## Variables
##                 Dim.1    ctr   cos2    Dim.2    ctr   cos2    Dim.3    ctr
## estrato      |  0.556  8.682  0.309 |  0.706 42.096  0.499 |  0.383 30.383
## preciom      |  0.882 21.868  0.778 |  0.254  5.442  0.064 | -0.087  1.569
## areaconst    |  0.848 20.207  0.719 | -0.230  4.450  0.053 | -0.174  6.228
## parqueaderos |  0.809 18.382  0.654 |  0.159  2.142  0.025 | -0.422 36.892
## banios       |  0.875 21.527  0.766 | -0.154  2.015  0.024 |  0.234 11.305
## habitaciones |  0.576  9.335  0.332 | -0.721 43.855  0.519 |  0.257 13.623
##                cos2  
## estrato       0.147 |
## preciom       0.008 |
## areaconst     0.030 |
## parqueaderos  0.178 |
## banios        0.055 |
## habitaciones  0.066 |
# Visualización del ACP
fviz_eig(pca_result, addlabels = TRUE, ylim = c(0, 50))

fviz_pca_var(pca_result, col.var = "contrib", gradient.cols = c("#00AFBB", "#E7B800", "#FC4E07"), repel = TRUE)

fviz_pca_ind(pca_result, col.ind = vivienda_clean$zona, palette = "jco", addEllipses = TRUE, ellipse.type = "confidence", repel = TRUE)

Informe de Resultados: Análisis de Componentes Principales (ACP) En este análisis, se llevó a cabo un Análisis de Componentes Principales (ACP) con el fin de reducir la dimensionalidad del conjunto de datos y explorar la estructura subyacente de las variables que describen las propiedades residenciales. Este enfoque permite condensar la información contenida en múltiples variables en unos pocos componentes principales que capturan la mayor parte de la variabilidad en los datos.

  1. Gráfico de Scree Plot: Varianza Explicada por los Componentes Principales El gráfico de Scree Plot muestra la cantidad de varianza explicada por cada componente principal. Los resultados son los siguientes:

Dimensión 1 (Dim.1): Explica el 56.1% de la varianza total. Dimensión 2 (Dim.2): Explica el 20.0% de la varianza total. Dimensión 3 (Dim.3): Explica el 10.4% de la varianza total. Dimensión 4 (Dim.4): Explica el 6.5% de la varianza total. Dimensión 5 (Dim.5): Explica el 4.0% de la varianza total. Dimensión 6 (Dim.6): Explica el 3.1% de la varianza total. En conjunto, las dos primeras dimensiones explican el 76.1% de la varianza total, lo que indica que estas dos dimensiones capturan la mayor parte de la variabilidad en los datos y son suficientes para describir la estructura subyacente de las propiedades residenciales.

  1. Gráfico de Variables en el Plano de los Componentes Principales El gráfico de variables proyectadas en el plano de los dos primeros componentes principales (Dim.1 y Dim.2) muestra las relaciones entre las variables y cómo contribuyen a cada dimensión:

Dimensión 1 (Dim.1): Variables como preciom, areaconst, banios, y parqueaderos tienen altas cargas en esta dimensión, lo que sugiere que están fuertemente asociadas con la variabilidad capturada por Dim.1. Dimensión 2 (Dim.2): habitaciones y estrato son las variables que más contribuyen a esta dimensión, lo que indica que estas características son diferenciadoras en el contexto de las propiedades residenciales. Las flechas de las variables apuntan hacia las direcciones en las que las variables tienen una mayor influencia. Por ejemplo, preciom y estrato tienen influencias opuestas en las dimensiones, lo que sugiere que podrían estar reflejando diferentes aspectos del mercado inmobiliario.

  1. Gráfico de Individuos en el Plano de los Componentes Principales El gráfico de individuos en el plano de los dos primeros componentes principales muestra cómo se distribuyen las propiedades según las zonas:

Distribución por Zonas: Las propiedades en diferentes zonas (Zona Centro, Zona Norte, Zona Oeste, Zona Oriente, y Zona Sur) se agrupan de manera diferenciada en el plano de los componentes principales. Esto indica que las características de las propiedades, como el precio por metro cuadrado y el número de habitaciones, varían considerablemente entre las zonas. Este gráfico permite identificar patrones y agrupaciones naturales de propiedades que podrían estar relacionadas con diferencias geográficas, socioeconómicas, o de infraestructura.

  1. Interpretación de los Resultados del ACP Dimensiones y Varianza Explicada:

La Dim.1 y Dim.2 explican juntas más del 76% de la variabilidad en los datos, lo que hace que estas dimensiones sean fundamentales para comprender la estructura del mercado inmobiliario. Importancia de las Variables:

Las variables relacionadas con el precio (preciom), el área construida (areaconst), y las características de las propiedades (banios, habitaciones) son las más influyentes en la diferenciación de las propiedades en las dos primeras dimensiones. Esto sugiere que el tamaño y el precio son factores críticos en la segmentación del mercado inmobiliario. Agrupamiento por Zona:

El análisis revela que las propiedades en diferentes zonas tienen características distintas, lo que puede ser útil para realizar segmentaciones más precisas del mercado.

# 5. Análisis de Conglomerados (Clúster)

#  Aumentar el número máximo de iteraciones en k-means

# Determinación del número óptimo de clústeres
fviz_nbclust(vivienda_scaled, kmeans, method = "wss") + labs(subtitle = "Elbow method")

fviz_nbclust(vivienda_scaled, kmeans, method = "silhouette") + labs(subtitle = "Silhouette method")

# Aplicación de k-means clustering con más iteraciones permitidas
set.seed(123)
kmeans_result <- kmeans(vivienda_scaled, centers = 3, nstart = 25, iter.max = 1000)

# Visualización de los clústeres en el espacio de los componentes principales
fviz_cluster(kmeans_result, data = vivienda_scaled, geom = "point", ellipse.type = "norm")

# Revisión del resultado de k-means
print(kmeans_result)
## K-means clustering with 3 clusters of sizes 1652, 609, 2547
## 
## Cluster means:
##      estrato    preciom  areaconst parqueaderos     banios habitaciones
## 1  0.3951276  0.2166788  0.2443121    0.1478298  0.5289940    0.4164008
## 2  0.8626899  1.9735638  1.7366599    1.8352496  1.5171738    0.8664322
## 3 -0.4625556 -0.6124278 -0.5737061   -0.5347004 -0.7058724   -0.4772482
## 
## Clustering vector:
##    [1] 1 3 3 3 1 1 1 1 1 3 1 1 1 3 3 3 1 1 3 1 1 3 3 1 3 3 1 3 1 2 3 2 1 2 2 3 3
##   [38] 1 3 2 2 2 3 3 3 1 2 1 3 1 3 1 1 1 3 1 1 1 2 3 2 2 1 1 1 3 1 2 2 1 1 2 2 3
##   [75] 2 1 3 1 3 3 3 3 3 3 3 3 3 3 1 3 1 3 1 3 1 1 3 3 1 1 3 3 1 1 1 1 1 1 1 2 3
##  [112] 2 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 2 1 1 1 1 3 2 2 1 1 1 1 1 1 3 1 3 3 3 3
##  [149] 3 3 2 1 1 3 1 3 1 1 3 3 3 3 3 2 1 3 1 1 1 3 1 1 1 1 1 3 3 2 1 1 1 3 1 1 1
##  [186] 3 3 3 3 3 3 3 3 3 3 1 3 1 3 1 3 3 3 3 1 3 1 3 3 3 3 1 3 3 3 3 3 3 3 3 3 3
##  [223] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 1 2 2 1 1 1 1 3 3 1 3 3 3 3 3 3 3 3 3 3 3 3
##  [260] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 1 3 3 1 1 1 3 3 3 3 3 3 3 3 3 2 3
##  [297] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 1 1 3 1 3 3 3 3 1 1 1 3 1 3 1 3 3
##  [334] 3 3 3 3 3 3 3 3 3 3 1 3 1 3 3 3 1 3 3 3 1 1 1 3 1 1 1 3 3 3 3 3 3 3 3 3 3
##  [371] 3 2 3 3 3 3 3 1 1 3 3 3 3 3 3 3 3 3 3 3 3 1 3 1 1 1 1 3 3 3 3 1 3 1 3 3 3
##  [408] 3 3 1 1 3 3 3 3 3 1 1 1 1 1 3 3 1 3 3 1 1 1 3 3 1 3 3 3 1 3 1 1 3 1 1 3 1
##  [445] 3 1 1 1 3 3 3 3 3 3 1 1 3 3 3 3 3 3 3 1 3 3 3 3 3 1 3 3 3 1 1 1 1 1 1 3 3
##  [482] 1 1 3 1 1 3 3 3 3 3 1 3 1 1 1 2 1 3 3 3 1 3 3 1 3 3 3 3 3 3 3 3 3 3 3 3 3
##  [519] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 1 1 3 3 1 2 3 3 3 3 3 3 3 1
##  [556] 2 3 3 2 1 2 3 3 1 3 1 2 3 1 1 1 1 1 2 1 2 3 3 3 2 2 2 2 1 1 1 1 1 3 2 1 1
##  [593] 2 1 2 2 2 1 2 1 1 1 1 2 2 1 2 2 2 1 2 1 1 2 2 2 2 2 2 1 2 1 2 2 2 3 2 2 2
##  [630] 1 1 1 1 1 2 1 1 2 2 1 2 1 2 2 2 2 2 3 2 2 2 1 2 2 1 1 2 2 3 2 1 2 1 2 1 1
##  [667] 2 2 1 1 1 1 2 1 2 2 1 2 2 2 1 2 2 2 1 1 2 1 2 1 2 1 2 2 1 1 1 1 2 2 1 1 2
##  [704] 2 2 1 2 1 1 2 2 2 2 2 2 1 2 2 2 1 2 2 2 2 1 2 2 2 2 2 2 1 1 2 1 1 3 2 2 2
##  [741] 1 2 2 1 2 2 1 2 1 1 1 1 1 3 1 1 1 1 2 3 1 1 2 2 3 1 1 2 1 2 1 1 1 1 1 2 1
##  [778] 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 1 1 1 2 2 2 1 1 1 1 2 1 2 2 1
##  [815] 1 1 2 1 2 1 1 1 1 3 1 1 1 3 3 1 2 3 1 1 3 1 3 1 3 1 3 2 1 1 1 1 2 1 3 1 3
##  [852] 1 2 1 3 3 3 1 1 3 3 1 1 3 3 1 1 3 1 1 1 1 3 1 3 1 1 2 1 1 3 3 1 1 3 2 1 3
##  [889] 1 1 1 3 1 2 2 2 1 1 2 1 1 3 3 3 3 1 1 3 3 2 1 2 3 3 3 3 1 1 1 1 3 3 3 1 1
##  [926] 3 1 1 1 1 1 2 2 2 1 2 2 2 2 1 1 3 3 3 3 3 3 3 3 3 3 1 3 1 3 1 3 3 1 3 3 3
##  [963] 3 1 2 2 1 2 1 1 2 1 2 2 2 2 2 1 1 1 3 3 1 3 3 1 1 1 1 3 2 1 3 3 1 1 2 3 3
## [1000] 3 3 3 3 3 3 3 3 3 3 3 1 3 3 3 3 1 2 1 1 3 1 3 3 2 3 3 2 3 1 1 3 1 1 2 1 3
## [1037] 1 3 3 3 3 1 3 3 3 1 1 2 1 1 1 1 2 3 1 1 1 1 1 1 3 1 1 1 1 3 1 3 1 1 1 1 3
## [1074] 3 1 2 3 1 1 1 3 1 3 3 3 3 3 3 3 3 1 3 3 1 3 3 1 3 1 1 2 1 3 1 3 1 1 3 1 1
## [1111] 1 1 3 3 1 3 1 3 1 1 2 3 3 2 1 1 1 1 3 1 3 1 1 1 3 3 2 2 3 3 3 1 1 3 3 3 3
## [1148] 3 3 3 3 3 3 3 1 3 3 1 1 3 3 1 3 3 3 1 3 1 1 3 3 1 3 3 1 3 1 1 3 3 3 1 3 3
## [1185] 3 1 1 1 1 3 1 1 3 1 3 1 1 1 3 3 3 3 3 3 3 3 1 1 1 3 3 2 1 1 1 3 3 1 2 3 1
## [1222] 3 3 3 3 3 3 3 1 3 3 3 1 1 3 3 3 1 3 3 3 3 3 3 1 3 3 3 3 3 3 3 3 3 3 3 1 3
## [1259] 3 1 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 1 1 1 2 1 3 3 3 2 3 3 3 3 3 1 3 1
## [1296] 3 3 3 1 1 1 1 1 1 1 1 1 1 3 1 1 1 3 3 1 1 1 1 1 1 1 1 3 1 2 1 1 1 1 3 3 3
## [1333] 1 2 3 3 1 3 2 2 1 1 2 1 2 2 3 1 2 3 1 1 3 3 3 2 3 3 1 1 3 3 3 2 1 2 1 1 3
## [1370] 1 2 3 3 3 3 3 1 1 3 1 2 3 3 3 3 1 3 3 3 1 1 1 2 3 1 3 3 1 1 1 1 3 3 3 3 1
## [1407] 1 3 3 1 3 3 3 3 3 3 3 3 2 3 3 3 3 1 1 1 3 3 1 3 3 3 3 3 3 3 1 1 1 1 3 3 3
## [1444] 3 1 3 1 1 1 2 3 3 3 3 3 3 3 3 3 3 1 2 2 1 1 1 2 2 1 2 2 1 1 3 3 1 1 1 1 1
## [1481] 3 2 3 3 1 3 3 3 1 3 3 1 1 3 2 1 3 3 3 1 1 1 3 2 2 1 1 3 3 2 1 3 3 3 3 3 3
## [1518] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 1 3 3 1 1 1 1 1 3 1 3 1 3 1 1 2 1 3 1 1 1 3 2
## [1555] 1 2 2 1 1 3 1 1 1 1 1 1 2 2 2 1 2 3 3 2 3 1 3 2 3 3 2 3 2 3 3 1 3 1 2 2 3
## [1592] 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 1 1 3 3 3 1 3 3 1 1 3 3 3 1 1 1 1 3 1 1 3
## [1629] 1 1 3 2 3 3 1 3 3 1 1 3 1 3 1 3 2 1 1 3 3 3 3 3 3 1 3 3 1 1 1 3 3 3 3 3 1
## [1666] 3 1 1 1 3 1 3 3 1 1 3 3 1 3 1 3 3 1 3 3 3 3 3 1 3 1 3 3 3 3 3 1 3 3 3 3 3
## [1703] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 1 3 3 3 1 3 1
## [1740] 1 3 3 3 3 3 3 3 3 1 2 3 3 3 3 1 3 2 1 1 2 1 1 1 3 2 1 1 1 2 3 3 2 1 3 3 3
## [1777] 3 1 1 3 1 2 1 3 3 1 3 1 1 2 1 1 1 3 1 1 1 3 3 3 3 3 2 3 2 3 3 1 1 3 3 3 1
## [1814] 1 2 1 1 1 2 1 2 2 2 3 1 1 3 1 1 1 1 2 1 1 1 2 2 1 3 3 3 1 3 3 3 3 1 1 3 3
## [1851] 3 3 1 2 1 1 1 1 3 3 2 3 3 3 3 3 3 1 1 1 1 1 3 3 1 3 3 3 3 3 1 1 3 3 3 3 1
## [1888] 1 3 1 2 3 3 3 3 3 3 3 3 3 3 3 1 3 3 2 1 1 3 1 3 1 3 3 3 2 3 3 1 1 1 1 3 3
## [1925] 1 1 1 2 3 1 3 3 3 3 2 3 3 3 3 2 2 3 1 2 1 3 1 3 1 2 1 1 1 3 3 2 1 3 1 1 1
## [1962] 3 3 1 1 2 1 3 3 1 1 3 3 3 3 3 3 3 3 3 3 1 3 1 1 3 3 2 3 3 3 1 3 3 3 3 1 3
## [1999] 3 3 3 3 3 3 1 3 3 3 3 3 3 1 3 3 3 3 3 3 3 3 1 3 1 3 3 3 3 3 3 3 3 1 3 3 3
## [2036] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 1 3 3 1 1 1 3 1 3 3 3 3 3 3 3
## [2073] 3 3 3 3 3 3 1 3 3 1 3 3 3 3 3 3 3 3 3 3 1 3 3 3 1 3 3 3 3 1 3 1 3 3 3 3 3
## [2110] 3 3 3 1 3 3 3 3 1 3 3 3 3 1 3 3 3 1 3 3 3 3 1 3 1 3 3 3 3 3 1 1 1 3 1 3 3
## [2147] 3 3 3 3 3 1 3 3 3 3 3 3 3 1 3 2 1 1 3 3 1 1 3 3 3 3 1 3 3 3 3 1 1 3 1 1 1
## [2184] 1 1 1 1 3 3 1 3 3 1 1 1 1 3 1 1 1 1 3 1 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
## [2221] 3 3 3 3 3 3 3 3 3 3 1 3 3 3 1 3 3 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
## [2258] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 1 3 1 3 3 1 3 1 3 1 3 1 1 1 3 2 3 1
## [2295] 3 3 3 2 1 3 1 1 2 3 1 3 3 3 3 3 3 3 3 3 3 3 3 1 1 1 3 3 3 1 3 1 1 3 3 3 3
## [2332] 1 3 3 3 1 3 1 3 3 3 3 3 3 3 3 1 2 3 3 3 1 3 3 1 3 3 3 3 3 3 1 1 3 1 3 3 3
## [2369] 3 3 3 3 3 3 2 3 2 3 3 3 3 1 1 1 1 3 3 1 1 1 3 1 1 3 1 3 3 2 2 3 1 3 1 1 1
## [2406] 3 3 3 1 1 3 2 2 3 1 1 3 3 1 3 1 3 2 1 3 3 1 3 1 3 1 1 1 3 3 2 1 3 1 1 2 1
## [2443] 3 3 1 1 3 1 1 1 1 3 3 3 1 3 1 3 3 1 1 2 3 1 1 3 3 1 1 1 3 1 3 2 2 1 1 3 1
## [2480] 3 1 1 1 2 1 1 2 1 1 1 1 3 3 3 3 3 2 1 3 3 3 3 3 1 2 3 3 3 3 3 1 3 1 1 3 3
## [2517] 3 3 3 1 3 3 1 1 3 1 3 3 3 3 1 3 3 3 3 1 3 1 1 1 3 3 3 3 1 3 3 3 3 3 3 1 3
## [2554] 3 3 3 3 3 3 1 1 3 3 3 3 3 1 1 3 3 3 3 3 3 3 2 1 3 2 3 1 1 1 1 3 3 3 3 3 3
## [2591] 3 3 3 3 3 3 2 1 1 3 3 1 3 3 1 1 3 1 1 3 1 3 1 3 3 1 3 3 3 3 3 3 1 3 1 3 1
## [2628] 3 3 3 1 3 1 2 3 3 1 3 3 3 1 1 3 3 3 3 3 1 3 3 3 3 2 1 3 1 2 2 2 1 2 2 1 1
## [2665] 2 1 1 1 1 1 1 1 1 1 1 1 3 2 2 3 2 1 1 3 3 2 2 1 1 2 1 2 2 1 1 3 1 2 2 1 1
## [2702] 1 3 2 1 1 3 3 2 1 1 1 3 1 1 1 2 2 1 1 3 2 1 1 1 3 1 2 3 1 2 1 1 2 3 1 2 1
## [2739] 2 3 2 2 2 2 2 2 2 2 3 3 3 3 2 3 2 1 3 3 3 3 1 2 3 1 1 3 1 1 3 1 1 1 3 1 3
## [2776] 1 1 1 1 1 3 3 1 1 3 3 3 3 1 1 3 2 3 3 3 1 3 3 3 3 1 3 1 3 1 3 1 3 3 1 1 3
## [2813] 3 3 3 3 3 1 3 3 3 3 3 3 3 3 3 3 3 3 1 1 3 1 1 1 1 1 1 3 3 3 3 3 3 1 1 1 1
## [2850] 1 3 3 2 3 1 2 2 2 1 2 1 2 1 1 2 1 2 1 1 3 1 2 1 2 1 2 2 1 1 1 2 2 1 1 2 2
## [2887] 2 2 2 1 2 2 1 2 1 2 2 2 1 2 1 1 2 2 1 1 2 1 1 2 2 2 2 1 1 2 2 1 1 2 2 1 2
## [2924] 1 2 2 1 1 1 1 1 1 1 2 1 3 2 2 2 2 3 2 1 1 2 2 2 1 2 2 2 1 1 1 2 2 2 2 2 1
## [2961] 3 2 2 2 1 2 2 2 1 1 1 1 2 2 2 2 2 1 1 2 2 2 2 2 2 2 2 2 1 2 2 1 1 1 1 2 1
## [2998] 2 1 2 2 2 2 1 2 2 2 2 1 1 1 3 1 1 1 1 3 1 3 1 1 1 1 1 2 2 2 1 2 2 1 2 2 2
## [3035] 1 2 1 1 1 1 1 1 2 2 1 3 2 1 2 1 1 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
## [3072] 1 1 1 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 3 1 1 1 1 1 1 1 1 1 1 3 3 1 1 1 1
## [3109] 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1 2 1 1 1 1 1 1 3 2 2 2 2 2 2 2 1 2 2 2 2 2 2
## [3146] 2 2 1 2 1 1 2 2 2 2 2 2 2 2 2 2 2 1 1 1 1 1 1 1 3 3 1 3 3 3 3 1 1 3 3 3 3
## [3183] 3 3 1 1 1 3 1 1 1 1 1 1 1 2 1 3 1 1 1 3 1 3 3 3 3 3 1 1 2 2 3 2 3 1 1 3 3
## [3220] 3 3 3 3 1 3 3 1 1 2 3 3 3 3 3 3 3 3 3 3 3 1 3 3 1 3 3 3 3 3 3 3 3 3 3 3 3
## [3257] 3 3 3 3 3 1 3 3 3 3 3 3 3 3 1 3 1 1 1 3 2 3 1 3 3 3 1 3 3 3 3 3 3 3 3 3 3
## [3294] 3 1 3 3 3 3 3 1 3 3 1 3 3 1 3 1 1 1 1 1 2 3 3 1 3 3 1 1 3 1 3 3 3 3 3 3 3
## [3331] 3 1 3 3 3 3 1 3 3 3 3 3 1 1 3 1 3 3 3 1 1 1 1 3 3 3 3 3 3 3 3 1 3 3 3 3 2
## [3368] 3 1 3 3 3 3 3 3 1 2 1 1 1 1 3 1 1 1 3 3 3 1 1 1 3 2 1 1 1 3 1 1 1 3 1 1 3
## [3405] 3 3 3 3 1 1 3 1 1 3 3 1 1 1 3 3 3 2 2 1 1 3 1 1 1 1 1 1 1 1 1 1 2 1 1 1 1
## [3442] 1 3 3 3 2 3 3 1 1 3 1 2 1 1 2 1 2 3 1 3 3 1 1 1 2 1 3 3 3 3 3 3 3 3 3 3 1
## [3479] 3 3 1 3 3 3 3 3 3 3 1 3 3 3 3 3 3 3 3 3 3 3 1 3 3 3 3 3 3 3 3 1 1 3 3 1 1
## [3516] 3 1 1 1 3 3 3 1 3 3 3 3 3 1 1 1 1 1 3 1 3 3 3 3 3 3 1 3 3 3 3 1 1 3 3 3 1
## [3553] 1 3 3 3 3 1 3 3 1 3 1 1 1 1 3 1 1 3 1 1 2 2 1 1 1 2 1 1 3 2 1 1 1 1 1 3 1
## [3590] 2 1 3 3 2 1 2 1 1 2 2 3 1 1 1 1 3 1 2 2 1 1 1 1 1 1 1 1 1 1 1 3 1 1 2 1 3
## [3627] 3 1 1 1 1 2 2 1 1 1 2 2 2 2 1 1 1 1 1 2 1 2 1 1 1 3 2 1 1 1 2 2 2 1 1 2 1
## [3664] 1 1 2 1 2 2 2 1 2 1 1 2 3 3 1 2 1 2 3 1 1 2 1 2 1 1 1 1 1 1 1 2 1 1 1 2 2
## [3701] 1 1 1 3 2 2 1 1 3 1 1 2 1 2 1 1 2 2 1 1 1 1 1 1 1 3 2 3 3 1 1 1 1 1 1 1 1
## [3738] 3 1 1 1 1 3 1 1 2 3 1 1 1 1 1 1 1 1 1 1 2 1 1 2 3 1 1 1 1 1 2 1 1 2 1 1 1
## [3775] 1 1 1 1 1 1 1 1 2 2 2 1 1 2 2 2 3 2 2 2 2 1 2 3 2 2 2 2 1 2 1 2 2 1 2 2 2
## [3812] 1 2 1 1 1 2 2 2 1 2 2 1 1 1 2 1 1 2 2 1 1 2 2 2 3 3 3 1 2 3 3 1 1 1 1 3 3
## [3849] 3 1 3 1 3 3 3 3 3 1 1 3 3 3 3 3 3 2 3 2 2 2 1 2 1 2 2 2 2 3 3 1 3 1 1 3 1
## [3886] 3 2 1 1 1 2 3 1 2 1 3 3 3 3 3 3 3 1 1 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 1 3
## [3923] 2 3 3 3 3 1 3 3 3 1 1 2 2 3 2 1 3 3 1 3 3 3 3 3 3 3 1 3 3 1 3 3 1 3 3 1 3
## [3960] 3 3 3 1 3 3 3 3 3 3 1 1 3 1 1 3 1 3 1 1 1 1 1 3 3 3 3 3 3 3 3 3 3 3 3 3 3
## [3997] 3 3 3 3 3 3 3 3 3 1 1 3 1 3 3 3 3 3 3 3 3 3 3 3 3 1 3 1 3 3 3 3 3 3 3 3 3
## [4034] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 1 3 3 3 1 3 3 3 3 3 3 3 3 1
## [4071] 3 3 3 3 1 3 3 3 3 3 3 3 3 3 3 3 3 3 1 3 3 3 3 3 3 3 3 3 1 3 1 3 3 3 1 3 1
## [4108] 3 3 3 3 3 3 3 3 3 3 3 3 3 1 3 1 3 3 3 3 3 3 3 3 3 3 1 3 3 3 1 1 3 3 3 3 3
## [4145] 3 3 3 3 3 3 3 3 3 3 3 3 1 3 3 3 3 3 1 1 1 3 3 3 3 3 1 1 3 3 3 3 3 3 3 3 3
## [4182] 3 3 3 2 3 3 1 3 1 1 1 1 3 1 3 3 3 1 3 1 3 3 1 1 3 3 1 3 3 3 3 3 3 1 1 3 3
## [4219] 3 3 3 1 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 1 3 3 2 2 1 3 3 2
## [4256] 3 3 3 3 3 3 3 1 3 3 1 3 3 3 3 3 3 3 3 3 3 3 3 3 1 3 3 3 3 3 3 3 3 3 3 3 3
## [4293] 3 3 3 3 3 3 3 1 3 3 3 1 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 1 3 3 3
## [4330] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 1 3 3 3 3 3 3 3 3 3 3 3 3 3
## [4367] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
## [4404] 3 3 1 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
## [4441] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 1 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
## [4478] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
## [4515] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
## [4552] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3
## [4589] 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3 2 2 1 2 3
## [4626] 1 2 2 2 3 1 1 3 3 3 3 3 3 3 3 3 1 3 1 3 1 1 1 3 3 3 3 3 1 3 3 3 1 1 3 3 1
## [4663] 3 1 3 3 1 3 3 1 1 2 3 3 3 3 3 3 3 3 3 3 3 2 3 3 3 3 3 3 3 3 3 3 1 3 1 1 1
## [4700] 1 1 1 3 1 1 1 3 1 1 1 1 2 2 2 3 3 3 3 1 3 3 3 3 3 3 1 3 3 3 3 3 3 3 3 3 1
## [4737] 3 3 3 1 2 3 1 1 3 2 1 1 1 1 3 3 3 1 1 3 1 3 2 2 1 3 3 2 1 3 3 3 3 2 1 1 2
## [4774] 1 1 1 1 1 1 3 1 3 3 1 1 3 3 3 1 3 1 2 3 3 1 3 3 3 3 3 3 1 3 3 3 1 3 3
## 
## Within cluster sum of squares by cluster:
## [1] 5623.814 4623.955 3887.191
##  (between_SS / total_SS =  51.0 %)
## 
## Available components:
## 
## [1] "cluster"      "centers"      "totss"        "withinss"     "tot.withinss"
## [6] "betweenss"    "size"         "iter"         "ifault"

Informe de Resultados: Análisis de Clúster (K-means) En este análisis, se realizó un análisis de clúster utilizando el método de K-means para segmentar las propiedades residenciales en grupos homogéneos con características similares. El objetivo de este análisis es identificar patrones y agrupaciones dentro del mercado inmobiliario que puedan ser útiles para la toma de decisiones estratégicas.

  1. Selección del Número Óptimo de Clústeres Dos métodos fueron utilizados para determinar el número óptimo de clústeres:

Método del Codo (Elbow Method):

El gráfico muestra que la suma total de cuadrados dentro de los clústeres (Within Sum of Squares) disminuye significativamente cuando se incrementa el número de clústeres de 1 a 3. A partir de 3 clústeres, la disminución se estabiliza, lo que indica que 3 es un número adecuado de clústeres. Método de la Silueta (Silhouette Method):

El gráfico de silueta muestra que el valor promedio de la anchura de la silueta es máximo cuando se utilizan 2 clústeres. Sin embargo, el segundo mejor valor se encuentra en 3 clústeres, lo que sugiere que 3 es también un número razonable para segmentar los datos. Con base en estos métodos, se decidió utilizar 3 clústeres para el análisis.

  1. Resultados del Clustering El método de K-means con 3 clústeres fue aplicado a los datos normalizados. Los resultados son los siguientes:

Tamaños de los Clústeres:

Clúster 1: 2807 propiedades. Clúster 2: 970 propiedades. Clúster 3: 4542 propiedades. Centroides de los Clústeres:

Cada clúster tiene su propio centroide, que representa la media de las variables para las propiedades agrupadas en ese clúster. Clúster 1: Se caracteriza por tener valores positivos en todas las variables, pero especialmente en banios y habitaciones. Clúster 2: Presenta los valores más altos en preciom, areaconst, y parqueaderos, lo que sugiere que agrupa propiedades más lujosas o de mayor tamaño. Clúster 3: Tiene valores negativos en todas las variables, indicando que agrupa propiedades más modestas en términos de tamaño y precio. 3. Visualización de Clústeres Gráfico de Clústeres en el Plano de los Componentes Principales: El gráfico muestra la distribución de los clústeres en el espacio de los dos primeros componentes principales del Análisis de Componentes Principales (ACP). Los clústeres están bien separados en el espacio, lo que indica que el modelo de K-means ha segmentado las propiedades de manera efectiva en grupos con características similares. 4. Interpretación de los Resultados Clúster 1:

Este grupo podría representar propiedades de tamaño mediano y precio moderado, con un equilibrio en las variables banios y habitaciones. Clúster 2:

Agrupa las propiedades más grandes y costosas, con más parqueaderos y un área construida mayor. Este clúster puede estar representando el segmento de propiedades de lujo o de alta gama en el mercado. Clúster 3:

Incluye propiedades con características más modestas, probablemente representando la porción más asequible del mercado inmobiliario, con menor tamaño y precio.

# 6. Análisis de Correspondencia

# Crear tabla de contingencia entre zona y tipo de propiedad
contingencia <- table(vivienda_clean$zona, vivienda_clean$tipo)

# Aplicar Análisis de Correspondencia (CA)
ca_result <- CA(contingencia, graph = FALSE)

# Resumen de los eigenvalues y coordenadas
eigenvalues <- ca_result$eig
print(eigenvalues)
##       eigenvalue percentage of variance cumulative percentage of variance
## dim 1 0.07642923                    100                               100
filas <- ca_result$row$coord
print(filas)
##  Zona Centro   Zona Norte   Zona Oeste Zona Oriente     Zona Sur 
##   -1.1640488    0.1088681    0.4790451   -1.0284587   -0.1039235
columnas <- ca_result$col$coord
print(columnas)
##                   [,1]
## Apartamento  0.1976241
## Casa        -0.3867404

Paso 6: Análisis de Correspondencia En este paso, se realizó un Análisis de Correspondencia (CA) para explorar la relación entre las zonas de la ciudad y el tipo de propiedad (Apartamento o Casa). Este método es especialmente útil para analizar tablas de contingencia y visualizar las asociaciones entre categorías de diferentes variables.

Resultados del Análisis de Correspondencia: Valores propios (Eigenvalues):

El análisis reveló un solo valor propio significativo (eigenvalue = 0.08305442), que explica el 100% de la varianza en la dimensión 1. Esto sugiere que toda la variabilidad en las relaciones entre zonas y tipos de propiedad se puede resumir en una sola dimensión. Coordenadas de las Zonas:

Las coordenadas de las zonas en la dimensión 1 fueron las siguientes: Zona Centro: -0.8613 Zona Norte: 0.0224 Zona Oeste: 0.5048 Zona Oriente: -0.8960 Zona Sur: -0.0479 Estas coordenadas indican cómo se posicionan las diferentes zonas en relación con la primera dimensión del análisis, que captura la mayor parte de la varianza. Zonas como “Zona Oriente” y “Zona Centro” están fuertemente alineadas en la dimensión 1, lo que sugiere que tienen patrones similares en términos de tipo de propiedad.

Coordenadas de los Tipos de Propiedad:

Las coordenadas de los tipos de propiedad en la dimensión 1 fueron: Apartamento: 0.2289 Casa: -0.3627 Esto indica que los apartamentos y las casas se asocian de manera diferente con las zonas de la ciudad. Las casas parecen estar más alineadas negativamente en la dimensión 1, mientras que los apartamentos tienen una alineación positiva.

Interpretación: El Análisis de Correspondencia sugiere que existe una diferenciación clara en las preferencias de tipo de propiedad en distintas zonas de la ciudad. Por ejemplo, las zonas “Centro” y “Oriente” están más fuertemente asociadas con un tipo de propiedad en particular, lo que podría influir en las decisiones estratégicas de la empresa inmobiliaria en cuanto a la focalización de mercados para diferentes tipos de propiedades.

Este análisis proporciona una visión clara de cómo los diferentes tipos de propiedades se distribuyen en las distintas zonas de la ciudad, lo que es crucial para orientar estrategias de marketing, ventas y desarrollo urbano.

Conclusiones

Precios y Estratos:

Los datos indican que los precios de las propiedades varían considerablemente, con una mayor cantidad de propiedades en los rangos de precios más bajos, asociadas a estratos socioeconómicos más bajos. Esto muestra que el mercado está claramente segmentado, con propiedades más económicas en zonas de estratos bajos y precios más altos en zonas de estratos superiores, donde los compradores valoran más la exclusividad y el tamaño. Preferencias por Zona:

El análisis reveló que hay diferencias marcadas en las preferencias de tipo de propiedad según la zona. Por ejemplo, las zonas “Centro” y “Oriente” tienen una preferencia clara por un tipo de propiedad específico, mientras que en “Norte” y “Oeste” las preferencias están más diversificadas. Esto indica que diferentes zonas atraen a diferentes tipos de compradores, influenciados por factores económicos y culturales. Agrupación de Propiedades:

Se identificaron tres grupos principales de propiedades basados en características como el estrato socioeconómico, el tamaño y la cantidad de habitaciones y baños. Estos grupos representan diferentes perfiles de compradores: Grupo 1: Compradores interesados en propiedades más económicas y pequeñas, como aquellos que compran por primera vez o buscan inversiones para alquilar. Grupo 2: Compradores que buscan propiedades de mayor valor, con amplias áreas construidas, dirigidas a familias con ingresos altos. Grupo 3: Compradores que buscan un equilibrio entre el precio y el tamaño de la propiedad, principalmente en zonas intermedias.

Recomendaciones

Campañas de Marketing Personalizadas:

Diseñar campañas de marketing específicas para cada zona de la ciudad. En zonas como “Centro” y “Oriente”, enfocar las campañas en las características que más valoran los compradores, como la ubicación y la proximidad a servicios. Promover apartamentos en las zonas donde son más populares y casas en las áreas donde predominan. Optimización de la Oferta:

Ajustar el portafolio de propiedades según los grupos identificados. Asegurar una oferta constante de propiedades económicas para el Grupo 1, destacar las propiedades de lujo para el Grupo 2, y promocionar propiedades que ofrezcan una buena relación calidad-precio para el Grupo 3. Ajustes Dinámicos de Precios:

Aplicar estrategias de precios que reflejen las diferencias de demanda en las distintas zonas y grupos. Establecer precios más competitivos en las áreas de mayor sensibilidad al precio y mantener precios premium en las zonas de alta demanda en estratos altos.