fbpx

Hola Mundo

En NLP y análisis de texto, stopwords son palabras muy comunes. ¿Sabes cuáles son en Español? Yo tampoco 😅 Pero pude hacer una estimación con los textos de está semana!

Comenta una 🍍 en el tweet si aprendiste algo nuevo (por ejemplo sobre text analysis)!

El código para hacer la gráfica!

# Hecho por @GonzalezGouveia con gusto para
# Twitter #DatosDeMiercoles por @R4DS_es

# cargar librerías
library(tm)
library(SnowballC)
library(wordcloud)
library(RColorBrewer)
library(tidyverse)
library(ggwordcloud)
library(ggthemes)

# leer datos
text1 <- read_csv('https://bit.ly/2k3GqHj', col_names = FALSE)
text2 <- read_csv('https://bit.ly/2k73Co4', col_names = FALSE)
text3 <- read_csv('https://bit.ly/2kyWzon', col_names = FALSE)
text4 <- read_csv('https://bit.ly/2lAkVyi', col_names = FALSE)
text5 <- read_csv('https://bit.ly/2lAICGI', col_names = FALSE)

# tranformar datos
text <- bind_rows(text1, text2, text3, text4, text5)

docs <- Corpus(VectorSource(text))

# pasar textos a minúsculas
docs <- tm_map(docs, content_transformer(tolower))
# quitar números
docs <- tm_map(docs, removeNumbers)
# dejar (en este caso) stopwords en español
# docs <- tm_map(docs, removeWords, stopwords("spanish"))
docs <- tm_map(docs, removePunctuation)
# eliminar espacios en blanco extras
docs <- tm_map(docs, stripWhitespace)

# crear tabla de frecuencias
dtm <- TermDocumentMatrix(docs)
m <- as.matrix(dtm)
v <- sort(rowSums(m),decreasing=TRUE)
d <- data.frame(word = names(v),freq=v)

# quedarse con las stopwords
d_filtered <- d[1:9,]

# graficas
d_filtered %>% 
  ggplot(mapping = aes(x = reorder(word, 
                                   -freq),
                       y = freq,
                       fill = freq)) +
  geom_col() +
  coord_flip() +
  labs(title = 'Stopwords en Español',
       subtitle = 'de programas políticos en Argentina y Uruguay',
       y = 'conteo',
       caption = 'De 102 930 palabras en total') +
  theme_gdocs() +
  theme(legend.position = "none",
        axis.title.y=element_blank())

# Guardando la gráfica
ggsave('ddm-stopwords.jpeg', 
       width = 8, 
       height = 4,
       units = 'in')