Preparación de los datos

Se realizan las siguientes acciones para el entendimiento de los datos:
  • Carga de los datos
  • <liVerificación de los datos y la cantidad de registros por cada una de las variable, se puede observar que para todas las columnas existen un total de 8322 registros
    ## 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>
    ## [1] 8322

    Validación de Datos faltantes

    Se valida el numero de datos faltantes (NA) por cada atributo, se puede observar que los campos parqueaderos y piso son los que mƔs datos NA tienen,tambiƩn se evidencian que existen tres registros que no tienen datos completos

    ##           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

    Eliminación de datos faltantes (NA)

    se decide eliminar las columnas piso y parqueaderos, por la gran cantidad de datos faltantes que se presentan.

    identificación de registros NA

    Se puede observar que en su gran mayorĆ­a los (3) registros NA hacen falta para todos los campos

    ##     ID Columna
    ## 1 8320      id
    ## 2 8321      id
    ## 3 8322      id
    ## 4 8320    zona
    ## 5 8321    zona
    ## 6 8322    zona

    Validación NA

    Se imprime los registros de las filas 8320, 8321 y 8322 con datos NA

    ## # A tibble: 3 Ɨ 13
    ##      id zona  piso  estrato preciom areaconst parqueaderos banios habitaciones
    ##   <dbl> <chr> <chr>   <dbl>   <dbl>     <dbl>        <dbl>  <dbl>        <dbl>
    ## 1    NA <NA>  <NA>       NA      NA        NA           NA     NA           NA
    ## 2    NA <NA>  <NA>       NA      NA        NA           NA     NA           NA
    ## 3    NA <NA>  <NA>       NA     330        NA           NA     NA           NA
    ## # ℹ 4 more variables: tipo <chr>, barrio <chr>, longitud <dbl>, latitud <dbl>

    Eliminación datos

    Se realiza una copia del data set y se decide eliminar las columnas parqueaderos, barrio y piso del dataset

    ##  [1] "id"           "zona"         "piso"         "estrato"      "preciom"     
    ##  [6] "areaconst"    "parqueaderos" "banios"       "habitaciones" "tipo"        
    ## [11] "barrio"       "longitud"     "latitud"
    ## [1] "Se eliminan las columnas id, piso, parqueaderos y barrio"
    ## [1] "zona"         "estrato"      "preciom"      "areaconst"    "banios"      
    ## [6] "habitaciones" "tipo"         "longitud"     "latitud"

    Eliminación de registros con NA

    Se define eliminar los registros número 8320, 8321 y 8322 debido a que no contienen información relevante

    ## # A tibble: 8,319 Ɨ 9
    ##    zona     estrato preciom areaconst banios habitaciones tipo  longitud latitud
    ##    <chr>      <dbl>   <dbl>     <dbl>  <dbl>        <dbl> <chr>    <dbl>   <dbl>
    ##  1 Zona Or…       3     250        70      3            6 Casa     -76.5    3.43
    ##  2 Zona Or…       3     320       120      2            3 Casa     -76.5    3.43
    ##  3 Zona Or…       3     350       220      2            4 Casa     -76.5    3.44
    ##  4 Zona Sur       4     400       280      5            3 Casa     -76.5    3.44
    ##  5 Zona No…       5     260        90      2            3 Apar…    -76.5    3.46
    ##  6 Zona No…       5     240        87      3            3 Apar…    -76.5    3.37
    ##  7 Zona No…       4     220        52      2            3 Apar…    -76.5    3.43
    ##  8 Zona No…       5     310       137      3            4 Apar…    -76.5    3.38
    ##  9 Zona No…       5     320       150      4            6 Casa     -76.5    3.48
    ## 10 Zona No…       5     780       380      3            3 Casa     -76.5    3.49
    ## # ℹ 8,309 more rows

    Verificación de datos faltantes

    Se vuelve a revisar la cantidad de datos faltantes por cada columna

    ##         zona      estrato      preciom    areaconst       banios habitaciones 
    ##            0            0            0            0            0            0 
    ##         tipo     longitud      latitud 
    ##            0            0            0

    Tratamiento datos categóricos

    Validación columna zona

    Se mira la cantidad de datos que existen por cada una de las zonas y verificación de NA en el atributo

    ## 
    ##  Zona Centro   Zona Norte   Zona Oeste Zona Oriente     Zona Sur 
    ##          124         1920         1198          351         4726
    ## [1] "Valores NA:  0"

    Se realiza el tratamiento de los datos categóricos de la siguiente manera: 1= Zona centro, 2 = Zona Norte, 3 = Zona Oeste, 4 = Zona Oriente y 5 = Zona Sur

    ## 
    ##    1    2    3    4    5 
    ##  124 1920 1198  351 4726

    Validación de tratamiento variable categórica

    Se realiza la validación del tratamiento de las variables categóricas

    ## 
    ##    3    4    5    6 
    ## 1453 2129 2750 1987
    ## [1] "Valores NA:  0"

    Se evalúa el tipo de vivienda, para posteriormente hacer el tratamiento de asignar valores numéricos

    ## 
    ## Apartamento        Casa 
    ##        5100        3219
    ## [1] "Valores NA:  0"

    Se asigna el valor 1 = Apartamento y 2 = Casa a la variable tipo de vivienda, se imprime el consolidado de valores por cada tipo, para verificar que se mantengan al valor anterior

    ## 
    ##    1    2 
    ## 5100 3219

    Se imprime la inforamción de cada variable del dataset para verificar que las acciones se realizaron de manera correcta

    ## spc_tbl_ [8,319 Ɨ 9] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
    ##  $ zona        : num [1:8319] 4 4 4 5 2 2 2 2 2 2 ...
    ##  $ estrato     : num [1:8319] 3 3 3 4 5 5 4 5 5 5 ...
    ##  $ preciom     : num [1:8319] 250 320 350 400 260 240 220 310 320 780 ...
    ##  $ areaconst   : num [1:8319] 70 120 220 280 90 87 52 137 150 380 ...
    ##  $ banios      : num [1:8319] 3 2 2 5 2 3 2 3 4 3 ...
    ##  $ habitaciones: num [1:8319] 6 3 4 3 3 3 3 4 6 3 ...
    ##  $ tipo        : num [1:8319] 2 2 2 2 1 1 1 1 2 2 ...
    ##  $ longitud    : num [1:8319] -76.5 -76.5 -76.5 -76.5 -76.5 ...
    ##  $ latitud     : num [1:8319] 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>

    Se realiza el escalado de los datos numƩricos, para que todos estƩn en le mismo rango.

    ##             zona    estrato    preciom  areaconst      banios habitaciones
    ## [1,]  0.06192582 -1.5872276 -0.5595498 -0.7339949 -0.07793773    1.6406840
    ## [2,]  0.06192582 -1.5872276 -0.3465670 -0.3842568 -0.77811479   -0.4147626
    ## [3,]  0.06192582 -1.5872276 -0.2552886  0.3152194 -0.77811479    0.2703863
    ## [4,]  0.81508501 -0.6156201 -0.1031580  0.7349051  1.32241640   -0.4147626
    ## [5,] -1.44439256  0.3559875 -0.5291236 -0.5940997 -0.77811479   -0.4147626
    ## [6,] -1.44439256  0.3559875 -0.5899759 -0.6150839 -0.07793773   -0.4147626
    ##            tipo   longitud    latitud
    ## [1,]  1.2586312  0.9728466  0.3793708
    ## [2,]  1.2586312  0.9331875  0.3763219
    ## [3,]  1.2586312  0.7607566  0.4225243
    ## [4,]  1.2586312 -0.6549016  0.4070454
    ## [5,] -0.7944184  0.8682385  0.9678065
    ## [6,] -0.7944184  0.6670691 -1.1242009

    Se realiza la validación grÔfica de datos NA

    ##  /\     /\
    ## {  `---'  }
    ## {  O   O  }
    ## ==>  V <==  No need for mice. This data set is completely observed.
    ##  \  \|/  /
    ##   `-----'

    ##      zona estrato preciom areaconst banios habitaciones tipo longitud latitud  
    ## 8319    1       1       1         1      1            1    1        1       1 0
    ##         0       0       0         0      0            0    0        0       0 0

    Correlación entre variables

    Al buscar la correlación entre las variables se puede observar que las variables que mÔs se encuentran correlacionadas corresponde a zona con latitud, con un 0,73 pero no es suficiente par determinar eliminar una de las dos.

    ##                      zona     estrato    preciom    areaconst      banios
    ## zona          1.000000000  0.11097057  0.0160982  0.007948296  0.07754447
    ## estrato       0.110970570  1.00000000  0.6098066  0.274323323  0.42032178
    ## preciom       0.016098198  0.60980664  1.0000000  0.687351963  0.66914558
    ## areaconst     0.007948296  0.27432332  0.6873520  1.000000000  0.64841648
    ## banios        0.077544475  0.42032178  0.6691456  0.648416477  1.00000000
    ## habitaciones  0.021593137 -0.07137615  0.2640912  0.516912916  0.58990641
    ## tipo          0.054034190 -0.11453194  0.2564593  0.547249986  0.43561976
    ## longitud     -0.167422502 -0.44414040 -0.3435882 -0.173742834 -0.24956975
    ## latitud      -0.739099266 -0.22749944 -0.1156676 -0.051887809 -0.13003729
    ##              habitaciones        tipo     longitud     latitud
    ## zona          0.021593137  0.05403419 -0.167422502 -0.73909927
    ## estrato      -0.071376147 -0.11453194 -0.444140396 -0.22749944
    ## preciom       0.264091206  0.25645935 -0.343588223 -0.11566757
    ## areaconst     0.516912916  0.54724999 -0.173742834 -0.05188781
    ## banios        0.589906412  0.43561976 -0.249569746 -0.13003729
    ## habitaciones  1.000000000  0.54678569 -0.008002016  0.02125096
    ## tipo          0.546785694  1.00000000  0.073830687 -0.05408973
    ## longitud     -0.008002016  0.07383069  1.000000000  0.23606961
    ## latitud       0.021250965 -0.05408973  0.236069614  1.00000000

    En el siguiente grÔfico se puede observar la correlación entre variables con semaforización entre la correlación, se puede evidenciar que el valor mÔs alto de correlación se encuentra entre los datos latitud y zona ## AnÔlisis de Componentes Principales Se aplica la función prComp para realizar el anÔlisis de componentes principales a la matriz de información y se imprime la deviación estÔndar de cada una de las variables por cada componente y la matriz con los pesos de que tiene cada variables por cada componente principal

    ## Standard deviations (1, .., p=9):
    ## [1] 1.8347462 1.4002295 1.2191142 0.8123222 0.7105738 0.5897252 0.5000643
    ## [8] 0.4877765 0.4315969
    ## 
    ## Rotation (n x k) = (9 x 9):
    ##                     PC1         PC2          PC3         PC4         PC5
    ## zona         -0.1039128  0.46160974  0.529879527 -0.06085689 -0.08127881
    ## estrato      -0.2881892  0.36083340 -0.413960783 -0.27239017 -0.15563926
    ## preciom      -0.4503065  0.06302816 -0.284707150 -0.28225695  0.12111328
    ## areaconst    -0.4563141 -0.17950165 -0.008166894 -0.13665127  0.32229223
    ## banios       -0.4758968 -0.07822991 -0.029021949 -0.01432887 -0.40706722
    ## habitaciones -0.3303414 -0.34041186  0.272546761  0.34278802 -0.55496085
    ## tipo         -0.3032353 -0.33119340  0.364806191  0.01769321  0.55895396
    ## longitud      0.2165372 -0.36405755  0.250848152 -0.83123667 -0.25188242
    ## latitud       0.1439009 -0.50625605 -0.442274728  0.12157748 -0.03270963
    ##                      PC6          PC7         PC8          PC9
    ## zona          0.16445169  0.605774385  0.30069031  0.024795871
    ## estrato      -0.48517221  0.324612088 -0.39915405 -0.129898782
    ## preciom       0.26799466 -0.087280869  0.19590413  0.707133973
    ## areaconst     0.54470506  0.102417051 -0.27075343 -0.506402790
    ## banios       -0.18645511 -0.280263670  0.59107261 -0.371444342
    ## habitaciones  0.05079719  0.112360741 -0.42932256  0.275144131
    ## tipo         -0.57498497  0.087267050  0.04496676  0.110850842
    ## longitud     -0.01760455  0.008833188 -0.05324314  0.005197961
    ## latitud       0.02784482  0.640851745  0.31628152 -0.006253762

    NĆŗmero de componentes principales

    Se hace uso de la función fviz_eig de la libreria ā€˜factoextra’ para visualizar los valores propios (eigenvalues) resultantes de un anĆ”lisis de componentes principales PCA, el resultado nos muestra que en los tres primeros componentes podemos obtener un 75,5% de los datos, en este caso se ve la importancia de poder obtener los tres primeros componentes principales

    ### AnÔlisis de las componentes principales Se realiza un anÔlisis de las componentes principales, se indica con la proporción acumulativa que con los tres primeros componentes obtenemos un 75% de la variabilidad de los datos.

    ## Importance of components:
    ##                          PC1    PC2    PC3     PC4    PC5     PC6     PC7
    ## Standard deviation     1.835 1.4002 1.2191 0.81232 0.7106 0.58973 0.50006
    ## Proportion of Variance 0.374 0.2178 0.1651 0.07332 0.0561 0.03864 0.02778
    ## Cumulative Proportion  0.374 0.5919 0.7570 0.83034 0.8864 0.92508 0.95287
    ##                            PC8    PC9
    ## Standard deviation     0.48778 0.4316
    ## Proportion of Variance 0.02644 0.0207
    ## Cumulative Proportion  0.97930 1.0000

    En la grƔfica de las variables en el plano de los componentes principales se puede evidenciar que que las variables destacadas en el primer componente principal corresponden a banio, area construido y precio, en el segundo y tercer componente principal las variables que resaltan son zona y latitud,

    AnƔlisis de Conglomerados

    PAra el anƔlisis de congolomerados se toma las siguientes variables del dataset: Zona, estrato, preciom, areaconst, banios, habitaciones y tipo,se crea un nuevo data frame con estas variables, estos datos se encuentran estandarizados en la variable vivienda_scaled

    ##          zona    estrato    preciom  areaconst      banios habitaciones
    ## 1  0.06192582 -1.5872276 -0.5595498 -0.7339949 -0.07793773    1.6406840
    ## 2  0.06192582 -1.5872276 -0.3465670 -0.3842568 -0.77811479   -0.4147626
    ## 3  0.06192582 -1.5872276 -0.2552886  0.3152194 -0.77811479    0.2703863
    ## 4  0.81508501 -0.6156201 -0.1031580  0.7349051  1.32241640   -0.4147626
    ## 5 -1.44439256  0.3559875 -0.5291236 -0.5940997 -0.77811479   -0.4147626
    ## 6 -1.44439256  0.3559875 -0.5899759 -0.6150839 -0.07793773   -0.4147626

    Para determinar el número de cluster, se usa el método del codo para determinar que el número de clusters en 2 agrupaciones, se hace uso del algoritmo kmeans para el anÔlisis del clustes y se usa el método de suma de cuadrados wss dentro del cluster (Within-cluster sum of squares, wss) ### Visualización de resultados Se aplica el método no jerÔrquico de agrupamiento Kmeans con dos agrupaciones y 200 iteraciones, posteriormente se grafica las dos agrupaciones

    ### Validación de resultados Se calcula el coeficiente de silueta para evaluar la calidad de los clusters obtenidos mediante el algoritmo Kmeans, en este caso el coeficiente de Silhouette promedio con k=2 es de 0.35, al estar el valor cercano a cero, podemos inducir que la observaciones estÔn cerca del límite entre clusters, por otro lado el promedio de todos los coeficientes de siluta individuales es cercano a 1.12, lo que sugiere que en promedio la observaciones estÔn relativamente bien observadas a sus clusters

    ## Coeficiente de Silhouette promedio k=2 :  0.3453832
    ## [1] 1.115128

    Conclusión

  • Se determina que el nĆŗmero de cluster para el proceso de agrupación con el mĆ©todo no jerĆ”rquico es k = 2
  • Se puede observar que segĆŗn el mĆ©todo silueta de validación las observaciones estĆ”n relativamente correctar con respecto a sus clusters
  • AnĆ”lisis de correspondencia

    Para realizar el anÔlisis de correspondencia, se realiza una copia del dataframe a un nuevo dataset eligiendo las variables tipo, zona y barrio, se procede a realizar la estandarización de la columna barrio, para ello se procede a pasar a minúscula los valores y se determina la frecuencia para determinar las acciones a realizar

    ##             Freq    % Valid % Valid Cum.    % Total % Total Cum.
    ## 20 de julio    3 0.03606203   0.03606203 0.03604903   0.03604903
    ## 3 de julio     1 0.01202068   0.04808270 0.01201634   0.04806537
    ## acopi        158 1.89926674   1.94734944 1.89858207   1.94664744
    ## agua blanca    1 0.01202068   1.95937012 0.01201634   1.95866378
    ## aguablanca     2 0.02404135   1.98341147 0.02403268   1.98269647
    ## aguacatal    109 1.31025364   3.29366510 1.30978130   3.29247777

    Se observan datos que hacen referencia al mismo barrio pero que se encuentran escritos con alguna variación, por lo tanto se cambian algunos caracteres extraños que se presentan en el contenido de la variable así como realizar algunos ajustes sobre los nombres de algunos barrios.

    ##             Freq    % Valid % Valid Cum.    % Total % Total Cum.
    ## 20 de julio    3 0.03606203   0.03606203 0.03604903   0.03604903
    ## 3 de julio     1 0.01202068   0.04808270 0.01201634   0.04806537
    ## acopi        158 1.89926674   1.94734944 1.89858207   1.94664744
    ## agua blanca    3 0.03606203   1.98341147 0.03604903   1.98269647
    ## aguacatal    109 1.31025364   3.29366510 1.30978130   3.29247777
    ## alameda       16 0.19233081   3.48599591 0.19226148   3.48473925

    Este anƔlisis se realiza entre las dos variables tipo y zona, se analiza la cantidad de tipos de vivienda y la cantidad que existe por cada zona

    ## 
    ## Apartamento        Casa 
    ##        5100        3219
    ##               
    ##                Apartamento Casa
    ##   Zona Centro           24  100
    ##   Zona Norte          1198  722
    ##   Zona Oeste          1029  169
    ##   Zona Oriente          62  289
    ##   Zona Sur            2787 1939

    Chi-cuadrado

    Se realiza la prueba chi-cuadrado entre las variables tipo, zona y barrio, en el resultado se puede observar que probabilidad observada, p-value es menor que 2.2e-16, lo que indica que hay una asociación significativa entre las variables categóricas zona, tipo y barrio.

    ## Warning in chisq.test(contingency_table): Chi-squared approximation may be
    ## incorrect
    ## 
    ##  Pearson's Chi-squared test
    ## 
    ## data:  contingency_table
    ## X-squared = 3280503, df = 3235702, p-value < 2.2e-16

    GrƔfica barrio-zona

    Se realiza la grƔfica del resultado del anƔlisis de correspondencia entre las tres variables. ## AnƔlisis de correspondencia entre variables zona y tipo Se seleccionan las variables zona y tipo para realizar anƔlisis de correspondencia y se grafica los resultados del anƔlisis

    ## AnƔlisis de correspondencia entre variables zona y barrio Se seleccionan las variables zona y barrio para realizar anƔlisis de correspondencia y se grafica los resultados de dicho anƔlisis