library(tidyverse)
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v ggplot2 3.3.3 v purrr 0.3.4
## v tibble 3.1.2 v dplyr 1.0.6
## v tidyr 1.1.3 v stringr 1.4.0
## v readr 1.4.0 v forcats 0.5.1
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
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(osmdata)
## Data (c) OpenStreetMap contributors, ODbL 1.0. https://www.openstreetmap.org/copyright
library(rtweet)
##
## Attaching package: 'rtweet'
## The following object is masked from 'package:purrr':
##
## flatten
library(leaflet)
library(lubridate)
##
## Attaching package: 'lubridate'
## The following objects are masked from 'package:base':
##
## date, intersect, setdiff, union
Utilizamos la base de tweets de Mendoza sobre vacunación, al no poder acceder a la API de Twitter a tiempo para la realización de este trabajo.
vacunacion_mendoza <- readRDS(file = "tw_mendoza_vacunacion.rds")
ggplot(vacunacion_mendoza)+
geom_histogram(aes(x = followers_count)) +
labs(title = "POPULARIDAD DE LOS USUARIOS",
x = "Cantidad de Seguidores",
y = "Cantidad")
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
Se da el caso donde una importante mayoría de las cuentas que tweetean respecto a vacunación en Mendoza poseen pocos seguidores, por lo que podemos interpretar que se trama de vecinos comunes de la ciudad y alrededores. Sin embargo hay un numero menor pero a considerar, de cuentas con considerable cantidad, que podrían tratarse de personalidades reconocidas como influencers o políticos, así como cuentas institucionales. Elaboramos un ranking de los usuarios mas importantes por cantidad de seguidores.
vacunacion_mendoza2 <- select(vacunacion_mendoza, screen_name, followers_count, location)
vacunacion_mendoza2 <- arrange(vacunacion_mendoza2, desc(followers_count))
vacunacion_mendoza2 <- distinct(vacunacion_mendoza2)
head(vacunacion_mendoza2)
## # A tibble: 6 x 3
## screen_name followers_count location
## <chr> <int> <chr>
## 1 diariouno 327443 Mendoza
## 2 mdzol 221407 Mendoza, Argentina
## 3 LosAndesDiario 212546 Mendoza, Argentina
## 4 mendozaopina 130570 Mendoza - Argentina
## 5 elsolonline 47462 Mendoza, Argentina
## 6 radionihuil 46365 Mendoza
vacunacion_mendoza3 <- filter(vacunacion_mendoza2, followers_count > 47460)
ggplot(data = vacunacion_mendoza3) +
geom_bar(aes(x = reorder(screen_name, followers_count), weight=followers_count)) +
coord_flip() +
labs(title = "USUARIOS POR CANTIDAD DE SEGUIDORES",
x = "Usuarios únicos",
y = "Cantidad de Seguidores")
Analizamos la temporalidad de los tweets por hora
ts_plot(vacunacion_mendoza, by="hours", xlab="hours") +
labs(title = "Evolución de Tweets sobre vacunación en Mendoza",
x = "Hora",
y = "Tweets")
## Warning: Ignoring unknown parameters: xlab
El gráfico permitiría identificar a los horarios cercanos al mediodía como los de mayor tráfico de tweets en relación a la vacunación en Mendoza
vacunacion_mendoza4 <- lat_lng(vacunacion_mendoza, coords = c("coords_coords", "bbox_coords", "geo_coords"))
tweets_vacunacion_4 <- vacunacion_mendoza4 %>%
filter(!is.na(lat), !is.na(lng))
nrow(vacunacion_mendoza4)
## [1] 700
bbox_mendoza <- getbb("Ciudad de Mendoza, Mendoza, Argentina")
mapa_mendoza <- get_stamenmap(bbox = bbox_mendoza,
zoom=13)
## Source : http://tile.stamen.com/terrain/13/2526/4888.png
## Source : http://tile.stamen.com/terrain/13/2527/4888.png
## Source : http://tile.stamen.com/terrain/13/2528/4888.png
## Source : http://tile.stamen.com/terrain/13/2529/4888.png
## Source : http://tile.stamen.com/terrain/13/2530/4888.png
## Source : http://tile.stamen.com/terrain/13/2526/4889.png
## Source : http://tile.stamen.com/terrain/13/2527/4889.png
## Source : http://tile.stamen.com/terrain/13/2528/4889.png
## Source : http://tile.stamen.com/terrain/13/2529/4889.png
## Source : http://tile.stamen.com/terrain/13/2530/4889.png
ggmap(mapa_mendoza)
ggmap(mapa_mendoza) +
geom_point(data = vacunacion_mendoza4, aes(x = lng, y = lat, size = followers_count, color = followers_count))+
scale_color_distiller(palette = "Spectral")+
theme_void()
## Warning: Removed 680 rows containing missing values (geom_point).
Habiendo realizado el mapeo, es posible identificar que el grueso de los tweets realizados no provienen de la Ciudad de Mendoza en si. La cantidad resultante que posee datos geográficos es pequeña (solo 700), y bien podrían originarse en otras localidades del Gran Mendoza.
bbox_lujan <- getbb("Luján de Cuyo, Mendoza, Argentina")
mapa_lujan <- get_stamenmap(bbox = bbox_lujan,
zoom=13)
## Source : http://tile.stamen.com/terrain/13/2526/4891.png
## Source : http://tile.stamen.com/terrain/13/2527/4891.png
## Source : http://tile.stamen.com/terrain/13/2528/4891.png
## Source : http://tile.stamen.com/terrain/13/2529/4891.png
## Source : http://tile.stamen.com/terrain/13/2530/4891.png
## Source : http://tile.stamen.com/terrain/13/2526/4892.png
## Source : http://tile.stamen.com/terrain/13/2527/4892.png
## Source : http://tile.stamen.com/terrain/13/2528/4892.png
## Source : http://tile.stamen.com/terrain/13/2529/4892.png
## Source : http://tile.stamen.com/terrain/13/2530/4892.png
## Source : http://tile.stamen.com/terrain/13/2526/4893.png
## Source : http://tile.stamen.com/terrain/13/2527/4893.png
## Source : http://tile.stamen.com/terrain/13/2528/4893.png
## Source : http://tile.stamen.com/terrain/13/2529/4893.png
## Source : http://tile.stamen.com/terrain/13/2530/4893.png
ggmap(mapa_lujan)
ggmap(mapa_lujan) +
geom_point(data = vacunacion_mendoza4, aes(x = lng, y = lat, size = followers_count, color = followers_count))+
scale_color_distiller(palette = "Spectral")+
theme_void()
## Warning: Removed 695 rows containing missing values (geom_point).
Haciendo el mismo ejercicio con la localidad de Lujan de Cuyo, perteneciente al mismo aglomerado, se vislumbran algunos casos situados en el centro de esta localidad, lo que avalaría esta hispótesis.