Antes que nada, vamos a llamar a las librerías que vamos a usar en este ejercicio.

options(scipen = 999)
library(rtweet)
library(tidyverse)
## -- Attaching packages -------------------------------------------------------------------------------------------------------------------------------- tidyverse 1.3.0 --
## v ggplot2 3.3.0     v purrr   0.3.3
## v tibble  2.1.3     v dplyr   0.8.5
## v tidyr   1.0.2     v stringr 1.4.0
## v readr   1.3.1     v forcats 0.5.0
## -- Conflicts ----------------------------------------------------------------------------------------------------------------------------------- tidyverse_conflicts() --
## x dplyr::filter()  masks stats::filter()
## x purrr::flatten() masks rtweet::flatten()
## x dplyr::lag()     masks stats::lag()
library(sf)
## Linking to GEOS 3.6.1, GDAL 2.2.3, PROJ 4.9.3
library(ggmap)
## Google's Terms of Service: https://cloud.google.com/maps-platform/terms/.
## Please cite ggmap if you use it! See citation("ggmap") for details.
library(ggplot2)
library(dplyr) 
library(lubridate)
## 
## Attaching package: 'lubridate'
## The following object is masked from 'package:base':
## 
##     date

Luego creamos un dataset llamado tweets_rmba a partir del listado de tuits del AMBA provisto durante la semana. Tenemos que ser pacientes porque pesa más de 270 MB.

tweets_rmba <- read.csv("tweets_rmba.csv", encoding = "UTF-8")

Para lidiar con una escala manejable, nos quedamos únicamente con un 10% de ese total de tuits.

tweets_rmba <- sample_frac(tweets_rmba, 0.1)

Echamos un primer vistazo al tipo de información que tenemos…

head(tweets_rmba)
##           X         Y                 id in_reply_to_status_id
## 1 -58.38159 -34.60371 953114599569596032                    NA
## 2 -58.58330 -34.70000 931104778494627968                    NA
## 3 -58.44012 -34.65206 925303258226286976                    NA
## 4 -58.48334 -34.50267 931183003417677952                    NA
## 5 -58.50122 -34.65059 983800785204018944                    NA
## 6 -58.38486 -34.60404 931862926704742016                    NA
##   in_reply_to_user_id
## 1                  NA
## 2                  NA
## 3                  NA
## 4                  NA
## 5                  NA
## 6                  NA
##                                                                                                                                    text
## 1                     #Escort BALI 15-4960-7977, https://t.co/P4xaoUHhaR #MartesDeTetas #Buenosaires #Zonanorte https://t.co/in0eNSi0P5
## 2                            Aquellos que volamos solos tenemos las alas mas fuertes #jueves en Isidro Casanova https://t.co/9xRMlxsCRo
## 3 <U+0001F535><U+0001F534> #SanLorenzo #SL #CASLA #Cuervos #Boedo #DaleSanlore #LaVidaEnAzulgrana #Instacuervo… https://t.co/6dTTNII3gC
## 4                                                                       I'm at Kenko in La Lucila, Buenos Aires https://t.co/3wNW42ofsT
## 5     #feriasolidaria #instalife #zidanemataderos #domingos #weekend #zidanerestobar \nSumate. Sumemos<U+270B>… https://t.co/ZvWy9W4AwP
## 6              Y después de una semana pesada de trabajo, me escapo para ver una de las obras más aclamadas en… https://t.co/IOoEKjGJbm
##                  created lang     source      user_name            user_id
## 1 2018/01/16 04:00:03+00   in  MyEscorts    MyEscortsOK 928319187185005056
## 2 2017/11/16 10:20:52+00   es  Instagram  NicolasDutto2         4199155414
## 3 2017/10/31 10:07:42+00  und  Instagram      MMusitani         2821981009
## 4 2017/11/16 15:31:43+00  und Foursquare     rociolence          151554606
## 5 2018/04/10 20:15:59+00   es  Instagram ZIDANERESTOBAR          575894414
## 6 2017/11/18 12:33:29+00   es  Instagram    ferrypotter           36600375
##             user_created
## 1 2017/11/08 17:51:56+00
## 2 2015/11/16 04:09:14+00
## 3 2014/09/20 13:49:41+00
## 4 2010/06/03 17:37:33+00
## 5 2012/05/10 03:31:10+00
## 6 2009/04/30 04:59:00+00
##                                                                                                                                               user_description
## 1                                                                                              Portal de escorts, acompañantes, modelos, masajistas. Nivel VIP
## 2                                                                                                   ing : nicodutto.ok /\n\nsnap : nico_celtics/\n\n1168801335
## 3                                                      Socio e hincha fanático de #SanLorenzo // #SocioRefundadorSL +9m² // 30 años // Futuro Contador Público
## 4                                                                                         Me quedo hasta el final en el cine. Me río de mis propios chistes :)
## 5 ZIDANE es una moderna propuesta situada en Villa del Parque, Caballito y Mataderos. Tragos inolvidables. Excelente menú y música acordes a un espacio único!
## 6     Soy apto para menores... pero me prefieren los mayores! Soy Mercadólogo/Publicista, adicto al buen gusto, Mr. Congeniality 2016 en LATAM comScore Awards
##                       user_location user_followers user_followed
## 1    Ciudad Autónoma de Buenos Aire             38             1
## 2                   isidro casanova             53           279
## 3                           Liniers           2013            10
## 4                                              156          5369
## 5                   Capital Federal            947          1762
## 6 Lomas de Santa Fe, Álvaro Obregón            458          1035

… y para tener una idea de todos los valores que maneja el dataset, echamos mano a la función names.

names(tweets_rmba)
##  [1] "X"                     "Y"                     "id"                   
##  [4] "in_reply_to_status_id" "in_reply_to_user_id"   "text"                 
##  [7] "created"               "lang"                  "source"               
## [10] "user_name"             "user_id"               "user_created"         
## [13] "user_description"      "user_location"         "user_followers"       
## [16] "user_followed"

a. ¿Cuáles son los mensajes con más repercusión? ¿Qué dicen?

Top_n es una función que viene con tidyverse y que nos permite mostrar los top X valores de una determinada variable.

Por default no los da ordenado, así que en la siguiente línea las ordeno (de allí el arrange).

En la última línea hago un select para chicar el ancho del dataframe, o sea, para que me muestre solo las columnas pertenecientes al nombre de usuario, el número de followers, la ubicación y el texto del tuit.

tweets_rmba_top = 
    tweets_rmba %>% 
    filter(user_location != "")%>%
    count(user_location) %>%
    arrange(desc(n)) %>% 
    top_n(10, n) 


tweets_rmba_top
## # A tibble: 10 x 2
##    user_location                                  n
##    <fct>                                      <int>
##  1 Argentina                                  12744
##  2 Buenos Aires, Argentina                     9913
##  3 Buenos Aires                                3218
##  4 Ciudad Autónoma de Buenos Aire              3182
##  5 Ituzaingó, Bs. As. GF05qi                   2038
##  6 La Plata, Argentina                         1148
##  7 Ciudad Autónoma de Buenos Aires, Argentina   906
##  8 Ciudad del Libertador General                863
##  9 argentina                                    726
## 10 Buenos Aires - Argentina                     610

Como podemos observar, el origen y la organizacion de los datos datos es muy importante. Podemos ver por ejemplo como el segundo y el tercero mas populares son el mismo lugar pero escrito distinto. La ciudad de Ituzaingo figura con numeros raros. La “ciudad del libertador general” que no es más que la Ciudad del Libertador General Don José de San Martín, más conocida como San Martín, es decir el partido de San Martín. que seguramente sea la forma en la que Twitter georreferencia los tuits de San Martín, Villa Martelli, Villa Ballester, Munro, etc. Se requiere un gran trabajo de entendimiento y limpieza de datos antes de poder sacar cualquier conclusion con este tipo de informacion.

b. ¿En qué momento del día se realiza la mayor cantidad de tweets? Graficar.

Para poder obtener en que momentos del dia se dan los picos de twitter debemos seleccionar un dia. Utilizamos el paquete dplyr para poder utilizar la funcion grepl que busca la columna created que contenga dentro de tu texto la fecha que queremos. Una vez realizado esto graficamos con ggplot la evolucion de los twits a los largo del dia.

tweets_day = tweets_rmba %>%
    filter(grepl('2017/10/15',created)) %>%
    mutate(created = ymd_hms(created))


ts_plot(tweets_day, "hours", color = "red") +
    labs(title = "Distribucion diaria en la que se realiza la mayor cantidad de tweets", subtitle = "Ciudad de Buenos Aires",
         caption = "Fuente: Base de datos Twitter") +
  theme_minimal()

El dia 15/10/2017 a partir del mediodida podemos observar como aumenta el flujo de tweets con un pico alrededor de las 3 pm y a partir de las 7 de la tarde crece hasta las 12 de la noche en donde alcanza su punto mas alto y luego empieza a bajar fuertemente hasta su pico mas bajo entre las 6 y las 7 am.

c. ¿Cómo se distribuye la popularidad de los usuarios? ¿Quiénes son los 5 que más seguidores tienen? Graficar

Primero vamos a ver la distribución de la popularidad de los usuarios.

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

Como se puede apreciar, la enorme mayoría de los usuarios cuenta con muy pocos seguidores. Vamos a ver quiénes son los 5 más populares, agregándole al resultado el nombre de usuario (screen_name), la ubicación (user_location) y el texto en cuestión (text).

tweets_rmba %>% 
    top_n(5, user_followers) %>% 
    arrange(desc(user_followers)) %>% 
    select(user_name, user_followers, user_location, text)
##   user_name user_followers user_location
## 1    maluma        4912535              
## 2    maluma        4912441              
## 3 Flordelav        2875799     Argentina
## 4 Flordelav        2870479     Argentina
## 5 Flordelav        2869447     Argentina
##                                                                                                                                                                        text
## 1                                              "Si con #23..." LOS AMO ARGENTINA <U+0001F1E6><U+0001F1F7><U+2764><U+FE0F> @ Buenos Aires, Argentina https://t.co/d5JDYoXIBX
## 2 YESSSS!!! <U+270A><U+0001F3FB><U+270A><U+0001F3FB><U+270A><U+0001F3FB>\nPrimera noche en el hipódromo de Buenos Aires. Una noche que va a quedar… https://t.co/vUpUMl0yCL
## 3                                                                LAM @marcelohigh mymtorres <U+0001F49A><U+0001F4AA><U+0001F3FB> en Artear Canal 13 https://t.co/9M7HFotLgd
## 4                                                     Mi outfit de flordetarde bymadamev @marcelohigh @mabbyautino mymtorres @gucci gloriaurbietaa… https://t.co/H4QiJWvLTM
## 5                                                        #Loocazo bymadamev makeup @mabbyautino @mabbyautino Hair @marcelohigh y gloriaurbietaa en… https://t.co/Ph8gvnk5OJ

Esperablemente, damos aquí con un listado de famosos, desde el cantante Maluma, hasta el conductor argentino Andy Kusnetzoff, pasando por la actriz Flor de la V y la ex reina de belleza venezolana Norkys Batista, todos ellos con más de 2 milones de seguidores.

d. Aislando los tweets que poseen coordenadas geográficas (lat y long), crear mapas que muestren posición de los tweets y cantid

Para encarar este ejercicio, vamos a ver cómo están tabulados los resultados utilizando el comando head.

head(tweets_rmba)
##           X         Y                 id in_reply_to_status_id
## 1 -58.38159 -34.60371 953114599569596032                    NA
## 2 -58.58330 -34.70000 931104778494627968                    NA
## 3 -58.44012 -34.65206 925303258226286976                    NA
## 4 -58.48334 -34.50267 931183003417677952                    NA
## 5 -58.50122 -34.65059 983800785204018944                    NA
## 6 -58.38486 -34.60404 931862926704742016                    NA
##   in_reply_to_user_id
## 1                  NA
## 2                  NA
## 3                  NA
## 4                  NA
## 5                  NA
## 6                  NA
##                                                                                                                                    text
## 1                     #Escort BALI 15-4960-7977, https://t.co/P4xaoUHhaR #MartesDeTetas #Buenosaires #Zonanorte https://t.co/in0eNSi0P5
## 2                            Aquellos que volamos solos tenemos las alas mas fuertes #jueves en Isidro Casanova https://t.co/9xRMlxsCRo
## 3 <U+0001F535><U+0001F534> #SanLorenzo #SL #CASLA #Cuervos #Boedo #DaleSanlore #LaVidaEnAzulgrana #Instacuervo… https://t.co/6dTTNII3gC
## 4                                                                       I'm at Kenko in La Lucila, Buenos Aires https://t.co/3wNW42ofsT
## 5     #feriasolidaria #instalife #zidanemataderos #domingos #weekend #zidanerestobar \nSumate. Sumemos<U+270B>… https://t.co/ZvWy9W4AwP
## 6              Y después de una semana pesada de trabajo, me escapo para ver una de las obras más aclamadas en… https://t.co/IOoEKjGJbm
##                  created lang     source      user_name            user_id
## 1 2018/01/16 04:00:03+00   in  MyEscorts    MyEscortsOK 928319187185005056
## 2 2017/11/16 10:20:52+00   es  Instagram  NicolasDutto2         4199155414
## 3 2017/10/31 10:07:42+00  und  Instagram      MMusitani         2821981009
## 4 2017/11/16 15:31:43+00  und Foursquare     rociolence          151554606
## 5 2018/04/10 20:15:59+00   es  Instagram ZIDANERESTOBAR          575894414
## 6 2017/11/18 12:33:29+00   es  Instagram    ferrypotter           36600375
##             user_created
## 1 2017/11/08 17:51:56+00
## 2 2015/11/16 04:09:14+00
## 3 2014/09/20 13:49:41+00
## 4 2010/06/03 17:37:33+00
## 5 2012/05/10 03:31:10+00
## 6 2009/04/30 04:59:00+00
##                                                                                                                                               user_description
## 1                                                                                              Portal de escorts, acompañantes, modelos, masajistas. Nivel VIP
## 2                                                                                                   ing : nicodutto.ok /\n\nsnap : nico_celtics/\n\n1168801335
## 3                                                      Socio e hincha fanático de #SanLorenzo // #SocioRefundadorSL +9m² // 30 años // Futuro Contador Público
## 4                                                                                         Me quedo hasta el final en el cine. Me río de mis propios chistes :)
## 5 ZIDANE es una moderna propuesta situada en Villa del Parque, Caballito y Mataderos. Tragos inolvidables. Excelente menú y música acordes a un espacio único!
## 6     Soy apto para menores... pero me prefieren los mayores! Soy Mercadólogo/Publicista, adicto al buen gusto, Mr. Congeniality 2016 en LATAM comScore Awards
##                       user_location user_followers user_followed
## 1    Ciudad Autónoma de Buenos Aire             38             1
## 2                   isidro casanova             53           279
## 3                           Liniers           2013            10
## 4                                              156          5369
## 5                   Capital Federal            947          1762
## 6 Lomas de Santa Fe, Álvaro Obregón            458          1035
bbox <- make_bbox(lon = tweets_rmba$X, lat = tweets_rmba$Y)

bbox
##      left    bottom     right       top 
## -59.37511 -35.37426 -57.72259 -33.82159
mimapa_tweets <- get_stamenmap(bbox, zoom = 10)
## Source : http://tile.stamen.com/terrain/10/343/614.png
## Source : http://tile.stamen.com/terrain/10/344/614.png
## Source : http://tile.stamen.com/terrain/10/345/614.png
## Source : http://tile.stamen.com/terrain/10/346/614.png
## Source : http://tile.stamen.com/terrain/10/347/614.png
## Source : http://tile.stamen.com/terrain/10/343/615.png
## Source : http://tile.stamen.com/terrain/10/344/615.png
## Source : http://tile.stamen.com/terrain/10/345/615.png
## Source : http://tile.stamen.com/terrain/10/346/615.png
## Source : http://tile.stamen.com/terrain/10/347/615.png
## Source : http://tile.stamen.com/terrain/10/343/616.png
## Source : http://tile.stamen.com/terrain/10/344/616.png
## Source : http://tile.stamen.com/terrain/10/345/616.png
## Source : http://tile.stamen.com/terrain/10/346/616.png
## Source : http://tile.stamen.com/terrain/10/347/616.png
## Source : http://tile.stamen.com/terrain/10/343/617.png
## Source : http://tile.stamen.com/terrain/10/344/617.png
## Source : http://tile.stamen.com/terrain/10/345/617.png
## Source : http://tile.stamen.com/terrain/10/346/617.png
## Source : http://tile.stamen.com/terrain/10/347/617.png
## Source : http://tile.stamen.com/terrain/10/343/618.png
## Source : http://tile.stamen.com/terrain/10/344/618.png
## Source : http://tile.stamen.com/terrain/10/345/618.png
## Source : http://tile.stamen.com/terrain/10/346/618.png
## Source : http://tile.stamen.com/terrain/10/347/618.png
## Source : http://tile.stamen.com/terrain/10/343/619.png
## Source : http://tile.stamen.com/terrain/10/344/619.png
## Source : http://tile.stamen.com/terrain/10/345/619.png
## Source : http://tile.stamen.com/terrain/10/346/619.png
## Source : http://tile.stamen.com/terrain/10/347/619.png
ggmap(mimapa_tweets)

mapa_tweets_base <- get_stamenmap(bbox, maptype = "toner-lite", zoom = 11)
## 120 tiles needed, this may take a while (try a smaller zoom).
## Source : http://tile.stamen.com/toner-lite/11/686/1228.png
## Source : http://tile.stamen.com/toner-lite/11/687/1228.png
## Source : http://tile.stamen.com/toner-lite/11/688/1228.png
## Source : http://tile.stamen.com/toner-lite/11/689/1228.png
## Source : http://tile.stamen.com/toner-lite/11/690/1228.png
## Source : http://tile.stamen.com/toner-lite/11/691/1228.png
## Source : http://tile.stamen.com/toner-lite/11/692/1228.png
## Source : http://tile.stamen.com/toner-lite/11/693/1228.png
## Source : http://tile.stamen.com/toner-lite/11/694/1228.png
## Source : http://tile.stamen.com/toner-lite/11/695/1228.png
## Source : http://tile.stamen.com/toner-lite/11/686/1229.png
## Source : http://tile.stamen.com/toner-lite/11/687/1229.png
## Source : http://tile.stamen.com/toner-lite/11/688/1229.png
## Source : http://tile.stamen.com/toner-lite/11/689/1229.png
## Source : http://tile.stamen.com/toner-lite/11/690/1229.png
## Source : http://tile.stamen.com/toner-lite/11/691/1229.png
## Source : http://tile.stamen.com/toner-lite/11/692/1229.png
## Source : http://tile.stamen.com/toner-lite/11/693/1229.png
## Source : http://tile.stamen.com/toner-lite/11/694/1229.png
## Source : http://tile.stamen.com/toner-lite/11/695/1229.png
## Source : http://tile.stamen.com/toner-lite/11/686/1230.png
## Source : http://tile.stamen.com/toner-lite/11/687/1230.png
## Source : http://tile.stamen.com/toner-lite/11/688/1230.png
## Source : http://tile.stamen.com/toner-lite/11/689/1230.png
## Source : http://tile.stamen.com/toner-lite/11/690/1230.png
## Source : http://tile.stamen.com/toner-lite/11/691/1230.png
## Source : http://tile.stamen.com/toner-lite/11/692/1230.png
## Source : http://tile.stamen.com/toner-lite/11/693/1230.png
## Source : http://tile.stamen.com/toner-lite/11/694/1230.png
## Source : http://tile.stamen.com/toner-lite/11/695/1230.png
## Source : http://tile.stamen.com/toner-lite/11/686/1231.png
## Source : http://tile.stamen.com/toner-lite/11/687/1231.png
## Source : http://tile.stamen.com/toner-lite/11/688/1231.png
## Source : http://tile.stamen.com/toner-lite/11/689/1231.png
## Source : http://tile.stamen.com/toner-lite/11/690/1231.png
## Source : http://tile.stamen.com/toner-lite/11/691/1231.png
## Source : http://tile.stamen.com/toner-lite/11/692/1231.png
## Source : http://tile.stamen.com/toner-lite/11/693/1231.png
## Source : http://tile.stamen.com/toner-lite/11/694/1231.png
## Source : http://tile.stamen.com/toner-lite/11/695/1231.png
## Source : http://tile.stamen.com/toner-lite/11/686/1232.png
## Source : http://tile.stamen.com/toner-lite/11/687/1232.png
## Source : http://tile.stamen.com/toner-lite/11/688/1232.png
## Source : http://tile.stamen.com/toner-lite/11/689/1232.png
## Source : http://tile.stamen.com/toner-lite/11/690/1232.png
## Source : http://tile.stamen.com/toner-lite/11/691/1232.png
## Source : http://tile.stamen.com/toner-lite/11/692/1232.png
## Source : http://tile.stamen.com/toner-lite/11/693/1232.png
## Source : http://tile.stamen.com/toner-lite/11/694/1232.png
## Source : http://tile.stamen.com/toner-lite/11/695/1232.png
## Source : http://tile.stamen.com/toner-lite/11/686/1233.png
## Source : http://tile.stamen.com/toner-lite/11/687/1233.png
## Source : http://tile.stamen.com/toner-lite/11/688/1233.png
## Source : http://tile.stamen.com/toner-lite/11/689/1233.png
## Source : http://tile.stamen.com/toner-lite/11/690/1233.png
## Source : http://tile.stamen.com/toner-lite/11/691/1233.png
## Source : http://tile.stamen.com/toner-lite/11/692/1233.png
## Source : http://tile.stamen.com/toner-lite/11/693/1233.png
## Source : http://tile.stamen.com/toner-lite/11/694/1233.png
## Source : http://tile.stamen.com/toner-lite/11/695/1233.png
## Source : http://tile.stamen.com/toner-lite/11/686/1234.png
## Source : http://tile.stamen.com/toner-lite/11/687/1234.png
## Source : http://tile.stamen.com/toner-lite/11/688/1234.png
## Source : http://tile.stamen.com/toner-lite/11/689/1234.png
## Source : http://tile.stamen.com/toner-lite/11/690/1234.png
## Source : http://tile.stamen.com/toner-lite/11/691/1234.png
## Source : http://tile.stamen.com/toner-lite/11/692/1234.png
## Source : http://tile.stamen.com/toner-lite/11/693/1234.png
## Source : http://tile.stamen.com/toner-lite/11/694/1234.png
## Source : http://tile.stamen.com/toner-lite/11/695/1234.png
## Source : http://tile.stamen.com/toner-lite/11/686/1235.png
## Source : http://tile.stamen.com/toner-lite/11/687/1235.png
## Source : http://tile.stamen.com/toner-lite/11/688/1235.png
## Source : http://tile.stamen.com/toner-lite/11/689/1235.png
## Source : http://tile.stamen.com/toner-lite/11/690/1235.png
## Source : http://tile.stamen.com/toner-lite/11/691/1235.png
## Source : http://tile.stamen.com/toner-lite/11/692/1235.png
## Source : http://tile.stamen.com/toner-lite/11/693/1235.png
## Source : http://tile.stamen.com/toner-lite/11/694/1235.png
## Source : http://tile.stamen.com/toner-lite/11/695/1235.png
## Source : http://tile.stamen.com/toner-lite/11/686/1236.png
## Source : http://tile.stamen.com/toner-lite/11/687/1236.png
## Source : http://tile.stamen.com/toner-lite/11/688/1236.png
## Source : http://tile.stamen.com/toner-lite/11/689/1236.png
## Source : http://tile.stamen.com/toner-lite/11/690/1236.png
## Source : http://tile.stamen.com/toner-lite/11/691/1236.png
## Source : http://tile.stamen.com/toner-lite/11/692/1236.png
## Source : http://tile.stamen.com/toner-lite/11/693/1236.png
## Source : http://tile.stamen.com/toner-lite/11/694/1236.png
## Source : http://tile.stamen.com/toner-lite/11/695/1236.png
## Source : http://tile.stamen.com/toner-lite/11/686/1237.png
## Source : http://tile.stamen.com/toner-lite/11/687/1237.png
## Source : http://tile.stamen.com/toner-lite/11/688/1237.png
## Source : http://tile.stamen.com/toner-lite/11/689/1237.png
## Source : http://tile.stamen.com/toner-lite/11/690/1237.png
## Source : http://tile.stamen.com/toner-lite/11/691/1237.png
## Source : http://tile.stamen.com/toner-lite/11/692/1237.png
## Source : http://tile.stamen.com/toner-lite/11/693/1237.png
## Source : http://tile.stamen.com/toner-lite/11/694/1237.png
## Source : http://tile.stamen.com/toner-lite/11/695/1237.png
## Source : http://tile.stamen.com/toner-lite/11/686/1238.png
## Source : http://tile.stamen.com/toner-lite/11/687/1238.png
## Source : http://tile.stamen.com/toner-lite/11/688/1238.png
## Source : http://tile.stamen.com/toner-lite/11/689/1238.png
## Source : http://tile.stamen.com/toner-lite/11/690/1238.png
## Source : http://tile.stamen.com/toner-lite/11/691/1238.png
## Source : http://tile.stamen.com/toner-lite/11/692/1238.png
## Source : http://tile.stamen.com/toner-lite/11/693/1238.png
## Source : http://tile.stamen.com/toner-lite/11/694/1238.png
## Source : http://tile.stamen.com/toner-lite/11/695/1238.png
## Source : http://tile.stamen.com/toner-lite/11/686/1239.png
## Source : http://tile.stamen.com/toner-lite/11/687/1239.png
## Source : http://tile.stamen.com/toner-lite/11/688/1239.png
## Source : http://tile.stamen.com/toner-lite/11/689/1239.png
## Source : http://tile.stamen.com/toner-lite/11/690/1239.png
## Source : http://tile.stamen.com/toner-lite/11/691/1239.png
## Source : http://tile.stamen.com/toner-lite/11/692/1239.png
## Source : http://tile.stamen.com/toner-lite/11/693/1239.png
## Source : http://tile.stamen.com/toner-lite/11/694/1239.png
## Source : http://tile.stamen.com/toner-lite/11/695/1239.png
ggmap(mapa_tweets_base)

Estamos listos para nuestro primer mapa de puntos.

ggmap(mapa_tweets_base) +
    geom_point(data = tweets_rmba, aes(x = X, y = Y))

Ahora podemos incluir una variable que destaque los tweets de los usuarios más populares.

tweets_rmba <- arrange(tweets_rmba, user_followers)

ggmap(mapa_tweets_base) + 
    geom_point(data = tweets_rmba, 
               aes(x = X, y = Y, color = user_followers)) +
    scale_color_distiller(palette = "Spectral")