library(pacman)
p_load("DT","xfun","ggplot2", "readr","tseries","ggfortify","tidyr", "dplyr", "plotly")
Estado de animo de los twitteros en México
Para empezar con el tema bien se sabe que la red social twitter es una de las más usadas actualmente por todo el mundo, donde millones de usuarios expresan sus opiniones diariamente acerca de algunos temas en especifico. Y el día de hoy se tomara en cuenta uno de los casos que más se han comentados en los últimos años que es la pandemia de COVID 19 en México, donde se analizaran los estados de ánimo de los usuarios en México.
También se tienen que tomar en cuenta que un estado de ánimo es una actitud que acontece en la vida emocional de una persona y los cuales pueden influir dependiendo de las situaciones de cada persona. Es por eso que en este caso de estudio se analizarán todos los estados de ánimo de los twitteros en México ante la situación de la pandemia.
Datos
Los datos utilizados en este análisis son en base a la organización INEGI en el siguiente enlace: https://www.inegi.org.mx/app/animotuitero/#/app/multiline
tweet <- read_csv("datos_twitter.csv")
## Rows: 2255 Columns: 7
## -- Column specification --------------------------------------------------------
## Delimiter: ","
## chr (2): tipo_usuario, lugar
## dbl (4): tuits_negativos, indice, recoleccion_promedio, tuits_positivos
## date (1): fecha
##
## i Use `spec()` to retrieve the full column specification for this data.
## i Specify the column types or set `show_col_types = FALSE` to quiet this message.
tweet
## # A tibble: 2,255 x 7
## fecha tuits_negativos indice recoleccion_promedio tipo_usuario lugar
## <date> <dbl> <dbl> <dbl> <chr> <chr>
## 1 2016-01-01 34401 2.98 136802 todos NAC
## 2 2016-01-02 34689 2.52 122121 todos NAC
## 3 2016-01-03 39431 2.41 134428 todos NAC
## 4 2016-01-04 46229 2.37 156001 todos NAC
## 5 2016-01-05 44575 2.25 144751 todos NAC
## 6 2016-01-06 43144 2.31 142602 todos NAC
## 7 2016-01-07 42547 2.26 138627 todos NAC
## 8 2016-01-08 46027 2.21 147592 todos NAC
## 9 2016-01-09 38919 2.57 138984 todos NAC
## 10 2016-01-10 40552 2.38 137241 todos NAC
## # ... with 2,245 more rows, and 1 more variable: tuits_positivos <dbl>
datatable(tweet)
Desarrollo.
Representación de los datos mediante una gráfica interactiva.
plot_ly(data = tweet, x = tweet$fecha , y = tweet$indice, type = 'scatter' , mode = 'lines')%>% layout(title = 'Estado de ánimo de twitteros México',
yaxis = list(zeroline = FALSE, title = 'Indice'),
xaxis = list(zeroline = FALSE), title = 'Fecha')
Se puede llegar a observar que los tuits tenian un control normal antes de Marzo del 2020, que es cuando la pandemia entro en vigor. Es cierto que poco después de la pandemia los tuits negativos aumentaron y se mantenieron constantes pero aún asi nunca hubo una superioridad de los tuits negativos hacia los tuits positivos.
Datos por año
tuits2022 <- tweet%>%
filter(between(fecha, as.Date("2022-01-01"), as.Date("2022-12-31")))
tuits2022 <- cbind(tuits2022, anio=2022)
tuits2021 <- tweet%>%
filter(between(fecha, as.Date("2021-01-01"), as.Date("2021-12-31")))
tuits2021 <- cbind(tuits2021, anio=2021)
tuits2020 <- tweet%>%
filter(between(fecha, as.Date("2020-01-01"), as.Date("2020-12-31")))
tuits2020 <- cbind(tuits2020, anio=2020)
tuits2019 <- tweet%>%
filter(between(fecha, as.Date("2019-01-01"), as.Date("2019-12-31")))
tuits2019 <- cbind(tuits2019, anio=2019)
tuits2018 <- tweet%>%
filter(between(fecha, as.Date("2018-01-01"), as.Date("2018-12-31")))
tuits2018 <- cbind(tuits2018, anio=2018)
tuits2017 <- tweet%>%
filter(between(fecha, as.Date("2017-01-01"), as.Date("2017-12-31")))
tuits2017 <- cbind(tuits2017, anio=2017)
tuits2016 <- tweet%>%
filter(between(fecha, as.Date("2016-01-01"), as.Date("2016-12-31")))
tuits2016 <- cbind(tuits2016, anio=2016)
yearTweet = rbind(tuits2016 , tuits2017 , tuits2018 , tuits2019 , tuits2020 , tuits2021 , tuits2022)
Estado de ánimo mediante un gráfico de caja y bigote.
Se utiliza un gráfico de caja y bigote que se filtraran por los años con la finalidad de comparar los cambios en el estado de ánimo de los usuarios mexicanos de twitter a traves de los años.
boxplot(yearTweet$indice~yearTweet$anio ,col = "red", xlab="Año", ylab="Indice", main="Estado de Ánimo twitteros")
abline(h = mean(tuits2016$indice) , col = "blue")
abline(h = mean(yearTweet$indice) , col = "green")
abline(h = mean(tuits2020$indice) , col = "purple")
Gracias a la gráfica de caja y bigote podemos analizar que a partir del año 2016 el estado de ánimo de los usuarios poco a poco fue bajando, pero apartir del año 2020 que fue cuando llegó la pandemia; este empezo a subir lentamente.
Representando los datos en la gráfica de caja y bigote destacamos que la línea azul representa el estado de ánimo máximo, la línea verde en promedio, y por último la línea morada el estado de ánimo más bajo.
Gráfica interactiva.
p <- plot_ly(x=yearTweet, y=tuits2016$indice, mode = 'lines', type="scatter", name="2016") %>%
layout(title = 'Estado de ánimo de twitteros México' ,
yaxis = list(zeroline = FALSE, title = 'Indice'),
xaxis = list(zeroline = FALSE, title = 'Día del Año'), legend = list(font = list(size = 15)))
p <- add_trace(p,y=tuits2017$indice, name="2017")
p <- add_trace(p,y=tuits2018$indice, name="2018")
p <- add_trace(p,y=tuits2019$indice, name="2019")
p <- add_trace(p,y=tuits2020$indice, name="2020")
p <- add_trace(p,y=tuits2021$indice, name="2021")
p <- add_trace(p,y=tuits2022$indice, name="2022")
p
Conclusión
Al realizar este analisis y también en base a nuestra experiencia personal en la pandemia, podemos darnos cuenta que en realidad si afectó emocionalmente a muchas personas en el país debido a las diversas expresiones de los usuarios en la red social twitter. Es importante destacar que con el surgimiento de la pandemia el indice de actividad en Twitter aumentó y también gracias a los datos proporcionados de la INEGI podemos saber el estado de ánimo de las personas que se expresban públicamente.
Archivo que contiene los datos de la investigación.
xfun::embed_file("datos_twitter.csv")