tle: “Twitter”
tput: html_document

Twitter

Cargamos el dataset de los tweets de la region metropolitana de buenos aires:

tw_rmba <- read.csv("/Users/nadia/Downloads/tweets_rmba.csv",
                         header = TRUE, 
                        sep = ",",
                        stringsAsFactors = FALSE)

Extraemos un 10% de la muestra de manera aleatoria:

tw_rmba01 <- sample_frac(tw_rmba, 0.1) 

Como no tenemos retwitts entonces buscamos los 5 usuarios con mas seguidores agrupandolos por nombre de usuario con la ultima cantidad de seguidores, el ultimo texto publicado y la ultima ubicacion. Y usamos “distinct” para que no nos repita los resultados:

tw_rmba01 %>% 
  select(user_name, user_followers, user_location, text) %>%
  group_by(user_name) %>% 
  summarise(user_followers = last(user_followers),
            text = last(text), 
            user_location = last(user_location)) %>% 
  distinct() %>% 
    top_n(5, user_followers) %>% 
    arrange(desc(user_followers)) 
## # A tibble: 5 x 4
##   user_name   user_followers text                          user_location   
##   <chr>                <int> <chr>                         <chr>           
## 1 maluma             4900013 "YA SALIÓ!!! #HOLA \n@offici… ""              
## 2 germanpaol…        3271367 Con la más linda! @sabrygarc… En mi querida B…
## 3 andykusnet…        2450954 #ozzy #carisma #rock #quebue… Buenos Aires, A…
## 4 pampitaofi…        2152314 Ya estamos listos para este … Buenos Aires    
## 5 baronjimena        1780855 "🔥🔥🔥L͟͟A͟͟ T͟͟O͟͟N͟͟T͟͟A͟͟🔥🔥…          Buenos Aires

Vemos que cantidad de tweets tenemos por hora:

tw_rmba01 <- tw_rmba01 %>%
mutate(created_at = str_remove(created, "\\+00"))

ts_plot(tw_rmba01, by = "hours")

Hacemos un grafico para ver como se distribuye la cantidad de followers por usuario:

options(scipen = 20)
ggplot(tw_rmba01) +
    geom_histogram(aes(x = user_followers))
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.

api_key <- "AIzaSyDOCg2uMWsISkQJOpYsUEgQKAEmKZVoQkk"
register_google(key = api_key)

Descargamos un mapa con las coordenadas de la RMBA:

mimap <- get_map(location = c(-58.3772300, -34.6131500), zoom = 12)

De los 86.000 tweets que teniamos, hicimos una muestra de los primeros 100 con mas seguidores:

tw_03 <- tw_rmba01 %>% 
  select(user_name, user_followers, user_location, X, Y) %>%
  group_by(user_name) %>% 
  summarise(user_followers = last(user_followers),
            user_location = last(user_location),
            X = last(X),
            Y = last(Y)) %>% 
  distinct() %>% 
    top_n(100, user_followers) %>% 
    arrange(desc(user_followers)) 

Ubicamos en el mapa a los usuarios segun su localizacion y mostramos la cantidad de seguidores que tiene la cuenta. Como utilizamos los 100 que mas seguidores tienen se ve una predominancia de usuarios con muchos seguidores:

ggmap(mimap) + 
    geom_point(data = tw_03, 
               aes(x = X, y = Y, size = user_followers), alpha = .4, color = "orange") +
    labs(title = "Procedencia de los tweets capturados")