Importacion de librerias
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.3.3
Importacion de archivos
importamos los diferentes archivos csv de los candidatos, obtenidos
mediante un web scraping
Mainez <- read.csv("C:/Users/User/Downloads/mainez.csv")
sheinbaum <- read.csv("C:/Users/User/Downloads/sheinbaum.csv")
xochitl <- read.csv("C:/Users/User/Downloads/xochitl.csv")
View(Mainez)
View(sheinbaum)
View(xochitl)
Calcular el total de likes para cada candidato
En los diferentes archivos tenemos campos relacionados con la cantida
de likes, comentarios y compartidos, a estos son necesarios que los
sumemos para poder tener un total y asi mas delante los tengamos
disponibles para la graficacion.
total_likes_mainez <- sum(Mainez$likes, na.rm = TRUE)
total_likes_sheinbaum <- sum(sheinbaum$likes, na.rm = TRUE)
total_likes_xochitl <- sum(xochitl$likes, na.rm = TRUE)
total_share_mainez <- sum(Mainez$shares, na.rm = TRUE)
total_share_sheinbaum <- sum(sheinbaum$shares, na.rm = TRUE)
total_share_xochitl <- sum(xochitl$shares, na.rm = TRUE)
total_comments_mainez <- sum(Mainez$comments, na.rm = TRUE)
total_comments_sheinbaum <- sum(sheinbaum$comments, na.rm = TRUE)
total_comments_xochitl <- sum(xochitl$comments, na.rm = TRUE)
Crear un data frame con los totales de likes
Creamos un dataframe que contenga los tres candidatos y en una lista
se centren la cantidad total de likes de cada uno de ellos
likes_data <- data.frame(
Candidato = c("Mainez", "Sheinbaum", "Xochitl"),
Likes = c(total_likes_mainez, total_likes_sheinbaum, total_likes_xochitl)
)
Crear la gráfica de barras
Creamos una grafica de barras para poder ver la diferencia de likes
entre los tres candidatos
ggplot(likes_data, aes(x = Candidato, y = Likes, fill = Candidato)) +
geom_bar(stat = "identity") +
labs(title = "Comparacion de total de likes entre candidatos",
x = "Candidatos",
y = "Total Likes") +
theme_minimal()

Crear un data frame con los totales de comentarios
Hora llevamos a cabo el mismo paso pero esta bes teniendo en cuenta
la cantidad de comentarios. )
comments_data <- data.frame(
Candidato = c("Mainez", "Sheinbaum", "Xochitl"),
Comments = c(total_comments_mainez, total_comments_sheinbaum, total_comments_xochitl)
)
ggplot(comments_data, aes(x = Candidato, y = Comments, fill = Candidato)) +
geom_bar(stat = "identity") +
labs(title = "Comparación de total de comentarios entre candidatos",
x = "Candidatos",
y = "Total Comentarios") +
theme_minimal()

Graficacion de total de compartidos
shares_data <- data.frame(
Candidato = c("Mainez", "Sheinbaum", "Xochitl"),
Shares = c(total_share_mainez, total_share_sheinbaum, total_share_xochitl)
)
ggplot(shares_data, aes(x = Candidato, y = Shares, fill = Candidato)) +
geom_bar(stat = "identity") +
labs(title = "Comparación de total de compartidos entre candidatos",
x = "Candidatos",
y = "Total Compartidos") +
theme_minimal()

Graficacion de la comparativa de likes y compartidos de cada
candidato
Mainez
comparison_data_mainez <- data.frame(
Metric = c("Likes", "Compartidos"),
Count = c(total_likes_mainez, total_share_mainez)
)
ggplot(comparison_data_mainez, aes(x = Metric, y = Count, fill = Metric)) +
geom_bar(stat = "identity") +
labs(title = "Comparación likes/compartidos candidato Mainez",
x = "Métrica",
y = "Cantidad") +
theme_minimal()

Sheinbaum
comparison_data_sheinbaum <- data.frame(
Metric = c("Likes", "Compartidos"),
Count = c(total_likes_sheinbaum, total_share_sheinbaum)
)
ggplot(comparison_data_sheinbaum, aes(x = Metric, y = Count, fill = Metric)) +
geom_bar(stat = "identity") +
labs(title = "Comparación likes/compartidos candidata Sheinbaum",
x = "Métrica",
y = "Cantidad") +
theme_minimal()

Xochitl
comparison_data_xochitl <- data.frame(
Metric = c("Likes", "Compartidos"),
Count = c(total_likes_xochitl, total_share_xochitl)
)
ggplot(comparison_data_xochitl, aes(x = Metric, y = Count, fill = Metric)) +
geom_bar(stat = "identity") +
labs(title = "Comparación likes/compartidos candidata Xochitl",
x = "Métrica",
y = "Cantidad") +
theme_minimal()
