Montera34

Documentación

Herramientas de usuario

Herramientas del sitio


airbnb:pregunta:nube-palabras-anuncios

¿Cómo se anuncian los pisos? Un análisis de las palabras usadas

Dificultad: MEDIA

METODOLOGÍA

Nube de palabras con timdream

  1. Seleccionar la columna NAME del listing pertinente
  2. Crear un fichero de texto con el texto copiado
  3. Seleccionar FILE y subir el fichero de texto
  4. Una vez generada la nube de palabras, pulsar sobre EDIT LIST y limpiar los datos (quitar palabras como “y”, “el”, “la”… o unir palabras con y sin tilde, etc.)
  5. Modificar el tema y la disposición de palabras al gusto

Porcentaje y número de palabras (R)

Si se desea ver numéricamente la frecuencia de las palabras, se puede usar el siguiente script de R:

avisos<- scan("INPUT.txt", what="character", sep="\n")`
avisos1 <- tolower(avisos)
avisos2 <- strsplit(avisos1, "\\W")
avisos3 <- unlist(avisos2)

freq<-table(avisos3)
freq1<-sort(freq, decreasing=TRUE)

percent<- round(100*(freq1/length(avisos)),3)
temple.sorted.table<-paste(names(freq1), freq1, percent, sep="\t")

cat("Word\tFREQ\tPERCENT", temple.sorted.table, file="OUTPUT.txt", sep="\n")
 

Aquí se verá la frecuencia absoluta de cada palabra y el porcentaje.

Número de palabras, bigramas y trigamas (Databasic.io)

Sube o copia-pega un archivo con todos los títulos de los anuncios (selecciona y copia esa columna en una hoja de cálculo) a la herramienta Wordcounter de Databasic.io

https://databasic.io/en/wordcounter

Número de palabras con línea de comandos

Como se describe en este ejercicio: https://www.datascienceatthecommandline.com/chapter-4-creating-reusable-command-line-tools.html#converting-one-liners-into-shell-scripts

Selecciona la columna 5 (que incluye los nombres de los anuncios):

awk -F, '{OFS=“,”;print $5}' listings_donostia_simple.csv > names.csv

Ahora calcula las palabras más usadas:

cat names.csv | tr '[:upper:]' '[:lower:]' | grep -oE '\w+' | sort | uniq -c | sort -nr | head -n 10

  145 in
  144 en
  129 room
  125 beach
  122 the
  114 apartment
  110 san
  100 la
   95 wifi
   91 de
   88 habitación
   81 con
   80 playa
   79 old
   77 apartamento
   69 a
   67 sebastian
   64 town
   62 parking
   58 by
   56 piso
   53 with
   53 center
   52 rentals
   51 y
   51 feelfree
   50 zurriola
   49 concha
   48 centro
   46 to

Análisis espacial

En este script de R https://code.montera34.com/airbnb/valencia/blob/master/analysis/palabras.R se muestra cómo generar mapas de presencia de palabras en barrios y distritos para el caso de Valencia:

  1. Se traducen a un mismo idioma los títulos y descripciones. En google spreadsheets: la fórmula
    =DETECTLANGUAGE(E2)

    permite detectar el idioma usado en la celda E2. Luego puedes traducir con

    =GOOGLETRANSLATE(E2;T2;"es")

    que traduce el contenido de la celda E2 del idioma definido en la celda T2 al español.

  2. Se cuantifica con tablas dinámicas o con R el número de anuncios por distrito o barrio para calcular su porcentaje (o fecuencia relativa).
  3. Se dibujan los mapas usando QGIS o R (se usó la librería tmap de R)

Resultado

Puedes ver un ejemplo en el informde de Efecto Airbnb Donostia (julio 2017) https://lab.montera34.com/airbnb/donostia/#palabras

airbnb/pregunta/nube-palabras-anuncios.txt · Última modificación: 2019/04/04 02:31 por numeroteca