como-se-concentra-la-oferta-por-barrios-de-airbnb
Diferencias
Muestra las diferencias entre dos versiones de la página.
Ambos lados, revisión anteriorRevisión previaPróxima revisión | Revisión previaPróxima revisiónAmbos lados, revisión siguiente | ||
como-se-concentra-la-oferta-por-barrios-de-airbnb [2018/04/20 00:56] – [4.1 Número de alojamientos en cada barrio] numeroteca | como-se-concentra-la-oferta-por-barrios-de-airbnb [2018/04/24 16:55] – Elimina tutos en carto skotperez | ||
---|---|---|---|
Línea 19: | Línea 19: | ||
* Donostia: ''/ | * Donostia: ''/ | ||
* Pamplona: ''/ | * Pamplona: ''/ | ||
- | * Madrid: ''/ | + | * Madrid: '' |
* **Contorno de barrios**. | * **Contorno de barrios**. | ||
* Donostia: https:// | * Donostia: https:// | ||
Línea 98: | Línea 98: | ||
- Si el archivo tiene columnas que se llamen " | - Si el archivo tiene columnas que se llamen " | ||
- Escogemos el mismo sistema de proyección que con los contornos WGS 84. | - Escogemos el mismo sistema de proyección que con los contornos WGS 84. | ||
+ | - Añade la capa con los barrios. Ejemplo para Madrid https:// | ||
- En el panel de la derecha Processing Toolbox selecciona en el menú: Processing Toolbox -> QGIS Geoalgorithms -> Vector analysis tools -> Count Points in Polygon. | - En el panel de la derecha Processing Toolbox selecciona en el menú: Processing Toolbox -> QGIS Geoalgorithms -> Vector analysis tools -> Count Points in Polygon. | ||
{{: | {{: | ||
Línea 119: | Línea 120: | ||
Este script de SQL llenará la columna '' | Este script de SQL llenará la columna '' | ||
- | |||
- | === 4.1.c Modo Builder (Carto.com) === | ||
- | |||
- | Este modo utiliza la interfaz gráfica nueva de Carto.com. | ||
- | |||
- | - Sube a tus bases de datos los archivos: '' | ||
- | - Crea un mapa y añade como capas '' | ||
- | - Sitúate en la capa '' | ||
- | - Selecciona el modo " | ||
- | - En el menú desplegado debes tener: Aggregate intersection: | ||
- | - Click en " | ||
- | - Entra en el modo tabla y cambia el nombre de la columna. Llámala " | ||
- | |||
- | Extra: 8. Puedes repetir el paso 5 pero ahora para usando COUNT y seleccionando la variable " | ||
- | |||
- | === 4.1.d Modo Editor(Carto.com) === | ||
- | |||
- | Este modo utiliza la interfaz gráfica antigua de Carto.com. Algunos usuarios antiguos aún no tienen el modo " | ||
- | |||
- | - Entra en el modo dataview del archivo de contornos de barrios de Donostia barrios_donostia. | ||
- | - Haz click en el icono "merge datasets" | ||
- | - Selecciona la opción " | ||
- | - A la izquierda tendrás la base de datos de los barrios de Donostia (activa todos los campos). A la derecha selecciona la base de datos de los puntos, en nuestro caso listings_donostia_simple. Selecciona la opción " | ||
- | - Click en "Merge datasets" | ||
- | |||
- | Extra: para calcular el número de plazas (la variable accommodates) seguiremos el mismo proceso pero en el paso 4. seleccionaremos la variable accommodates y la opción " | ||
==== 4.2 Añadir localización de barrio a cada punto ==== | ==== 4.2 Añadir localización de barrio a cada punto ==== | ||
- | Otra forma de abordar el problema es calcular en qué barrio está cada punto y asociar esa información a la base de datos. | + | Otra forma de abordar el problema es calcular en qué barrio está cada punto y asociar esa información a la base de datos. Este método añadirá el nombre del barrio a cada anuncio según se ubique el punto dentro del contorno de un barrio. |
=== 4.2.a Con QGIS === | === 4.2.a Con QGIS === | ||
Línea 154: | Línea 129: | ||
- Utilizamos la herramienta “Unir atributos por localizacion” (Menu: Vector > Data Management Tools > Join Attributes by location) para añadir informacion (de barrio) a cada unos de los anuncios de la base de datos de los anuncios. | - Utilizamos la herramienta “Unir atributos por localizacion” (Menu: Vector > Data Management Tools > Join Attributes by location) para añadir informacion (de barrio) a cada unos de los anuncios de la base de datos de los anuncios. | ||
- La capa “Target vector Layer” serán nuestros anuncios de Airbnb y la “Join Vector Layer” los barrios. | - La capa “Target vector Layer” serán nuestros anuncios de Airbnb y la “Join Vector Layer” los barrios. | ||
- | - Marca "intersect" y las opciones “Take attributes of first located feature” y “Only keep matching records” (para quedarte solamente con los puntos que están en los barrios“). | + | - Marca "Intersects" y las opciones “Take attributes of first located feature” y “Only keep matching records” (para quedarte solamente con los puntos que están en los barrios“). |
- | - Salva la capa como un shapefile, csv o geojson y comprueba que se ha añadido la columna de “barrio” a tus base de datos de anuncios. | + | - Salva la capa como un shapefile, csv (listings_airbnb-madrid_insideairbnb-datahippo_merged_con-barrio.csv) |
El resultado puedes descargarlo aquí: | El resultado puedes descargarlo aquí: | ||
* Navarra https:// | * Navarra https:// | ||
- | * Madrid | + | * Madrid |
Ahora con una tabla dinámica puedes calcular el número de anuncios por barrio. | Ahora con una tabla dinámica puedes calcular el número de anuncios por barrio. | ||
Línea 170: | Línea 145: | ||
=== 4.3.a Modo con QGIS === | === 4.3.a Modo con QGIS === | ||
- | - Join table desde el menú de propiedades de una capa. | + | - Añade la capa de contornos de barrio que contiene |
+ | - En propiedades de la capa ve a la sección '' | ||
+ | {{: | ||
+ | - Rellena: | ||
+ | * Join Layer: la capa con la información de número de viviendas por barrio (del archivo '' | ||
+ | * Join Field: la columna que tiene el nombre del barrio ('' | ||
+ | * Target field: '' | ||
+ | * Custom field name prefix: '' | ||
+ | * Dale a '' | ||
+ | {{ : | ||
+ | - Si ahora vamos a la sección '' | ||
+ | - Ahora con botón derecho sobre la capa '' | ||
+ | {{ : | ||
+ | - Pulsa en el lápiz de arriba a la izquierda para poder editar la capa. | ||
+ | - Crea una columna nueva (botón de arriba a la derecha) | ||
+ | {{ : | ||
+ | - Pulsa en el icono del ábaco para calcular el cociente entre número de anuncios por barrio y número de viviendas por barrio: ''" | ||
+ | * Nº total de hogares | ||
+ | * Nº de viviendas | ||
+ | * Nº Total de viviendas familiares (Censo Edificios y Viviendas 2011) | ||
+ | * Nº Total de viviendas (Censo Edificios y Viviendas 2011) | ||
+ | {{ : | ||
+ | - Ya tienes la variable creada con el ratio de anuncios deAirbnb por cada 100 viviendas. Ahora quieres que tenga solamente 2 decimales, debes repetir el paso anterior pero con este cálculo para actualizar '' | ||
+ | {{ : | ||
+ | - Dale a ok y vuelve a pulsar en el lápiz, para salvar los cambios. | ||
- | === 4.3.b Modo manual (Carto) === | ||
- | Puedes meter esos datos en Carto "a mano" en la tabla de valores. Añade columna y edita todos los campos. Copia pega. Son sólo 18 valores. Fácil. | ||
- | Pero más fácil todavía lo siguiente: | + | ===== Mapa de coropletas 3 ===== |
- | - Descarga la tabla generada en el anterior ejercicio en table. Es la tabla de contornos de barrios que ahora incluye los valores de alojamientos por barrio. | + | Ya solo nos queda hacer el mapa de coropletas utilizando |
- | - Edita con un editor de hojas de cálculo y añade los valores a cada barrio de los datos de / | + | |
- | - Crea una columna percent_turisticas y haz el cálculo: '' | + | |
- | - Salva la tabla como .csv y súbela a carto. | + | |
- | === 4.3.c Modo script (Carto.com) | + | ==== Modo QGIS ==== |
- | + | ||
- | == Junta dos tablas == | + | |
- | + | ||
- | Primero tenemos que añadir al mapa de carto la base de datos viviendas_barrios_donostia. Esta base de datos contiene el número de viviendas por barrio. | + | |
- | + | ||
- | Usaremos el siguiente script (un join) para unir ambas tablas: | + | |
- | + | ||
- | '' | + | |
- | + | ||
- | que traducido a lenguaje común significa: actualiza (UPDATE) la tabla barrios_donostia y pon (SET) el número de viviendas por barrio de la tabla viviendas_barrios_donostia (el nombre de la columna es total) (FROM) en las filas donde coincidan la columna bar_ds_o (nombre del barrio) de un archivo con la columna barrios de otro (WHERE). | + | |
- | + | ||
- | De este modo tendremos los datos de viviendas por barrio en la tabla de contornos de barrios. | + | |
- | + | ||
- | === Calcula porcentaje de alojamientos de Airbnb por el total de viviendas === | + | |
- | + | ||
- | Luego nos queda calcular el porcentaje con otro script que divide una columna por otra (nº de alojamientos de airbnb / nº viviendas para cada barrio). Antes de esta operación hay que crear la coluna percent_turisticas: | + | |
- | + | ||
- | '' | + | |
- | + | ||
- | Esto es, en la tabla de los contornos de los barrios mete en la recién creada columna percent_turisticas el resultado de dividir el número de viviendas por el total de viviendas en ese barrio viviendas. Multiplica por 100 para obtener el porcentaje. | + | |
- | + | ||
- | Para evitar que salgan muchos decimales correr este script: | + | |
- | + | ||
- | '' | + | |
- | + | ||
- | Pasará de 0.124342983492 a 0.12. | + | |
- | + | ||
- | Manual: para join: https:// | + | |
- | + | ||
- | === 4.3.d Modo Builder (Carto.com) === | + | |
- | + | ||
- | Tienes que unir los datos incluidos en dos tablas diferentes: la tabla de barrios_donostia con el número de viviendas por barrio de la tabla viviendas_barrios_donostia. | + | |
- | + | ||
- | Entra en el modo dataview del archivo de contornos de barrios de Donostia. | + | |
- | Haz click en el icono "merge datasets" | + | |
- | Selecciona la opción " | + | |
- | A la izquierda selecciona barrios_donostia y la variable bar_ds_o (que contiene el nombre de los barrios) y a la derecha la tabla " | + | |
- | Selecciona las variables de ambas tablas que quieras incluir. De la izquierda todas, y de la derecha todas menos " | + | |
- | Renombra la tabla para saber lo que inclute: barrios_donostia_viviendas_airbnb_normales | + | |
- | + | ||
- | ===== Mapa de coropletas 3 ===== | + | |
- | Ya solo nos queda hacer el mapa de coropletas utilizando | + | - Ahora vamos a dar estilo al mapa. Botón derecho sobre la capa, Propiedades > Style. Elige: |
+ | * Graduated | ||
+ | * Column: '' | ||
+ | * Mode: Juega con Equal interval, Natural breaks (jenks) y | ||
+ | - Dale a '' | ||
+ | - Dale a '' | ||
+ | {{ : | ||
+ | - ¡Tenemos el mapa! Coloreado usando modo " | ||
+ | {{ : | ||
+ | - Es posible mirar el histograma para ver cómo Jenks hace las particiones: | ||
+ | {{ : | ||
+ | - Ahora falta exportar el mapa.[[http:// | ||
+ | - Crear layout | ||
+ | - Añadir mapa | ||
+ | - Cambiar nivel de zoom | ||
+ | - Añadir leyenda | ||
+ | - Exportar a pdf o SVG y continuar la edición en Inkscape para combinar un mapa con un gráfico de barras. | ||
===== Gráfico de barras ===== | ===== Gráfico de barras ===== |
como-se-concentra-la-oferta-por-barrios-de-airbnb.txt · Última modificación: 2018/09/26 19:11 por numeroteca