Ejercicios Semana 13

Autor/a

Santiago Sotelo y Nadia Duffó

Material para el ejercicio

Descarga la carpeta .zip para acceder al material de esta sesión. Haga click en el siguiente enlace. No olvides unzipear el archivo.

✨ Ejercicios de repaso en R: análisis descriptivo y prueba chi-cuadrado

En este conjunto de ejercicios repasaremos algunos procedimientos básicos en R relacionados con el análisis descriptivo y el análisis bivariado mediante la prueba chi-cuadrado.

El código que aparece más abajo incluye ejemplos, pero está incompleto a propósito. Cada vez que encuentres ____, significa que debes completar esa parte del código.

Trabajaremos con una base de datos de noticias en web que contiene información como si una noticias es falsa o real, si incluye imagen, y cómo se ha compartido en Facebook (likes, comentarios, shares, y engagements -la suma de los tres primeros-).

📦 1. Preparación del entorno

Recuerda siempre iniciar con la carga de los paquetes necesarios. Si deseas saber a qué paquete pertenece una función, puedes escribir en la consola ?nombre_de_función para consultar la ayuda (en el panel “Help”).

pacman::____(____, ____, ____, ____)

📁 2. Importación de la base de datos

Importa la base desde el archivo data/datanews.xlsx.

df <- ____("____")

🔍 3. Exploración inicial

Explora la estructura de la base (nombres de columnas, tipos de datos, etc.) usando funciones como names(), head(), tail(), glimpse(), str().

____(____)

📊 4. Análisis descriptivo

Podemos comenzar describiendo algunas variables mediante tablas y gráficos. Responde las siguientes preguntas:

¿Cuál es la proporción de noticias falsas y reales?

Primero, crea una tabla con frecuencias y porcentajes.

tabla <- df %>%
  count(____) %>% 
  ____(pct = round(____ / ____(n) * 100))

tabla

Luego, representa la información gráficamente con el tipo de gráfico más adecuado.

____(tabla, aes(x = ____, y = ____)) +
  _____col() +
  labs(title = "Gráfico 1: Noticias según tipo (falsas y reales)",
       x = "____",
       y = "Porcentaje") +
  _____minimal()

✏️ Describe brevemente lo que observaste:

¿Cómo varía la presencia de imágenes entre noticias falsas y reales?

Primero, construye una tabla de contingencia.

tabla <- ____(____$tiene_imagen, ____$es_fake) %>% 
  prop.____(2)*____

tabla

Ahora, grafica la distribución.

tabla_plot <- df %>%
  group_by(____) %>% 
  ____(tiene_imagen) %>%
  ____(pct = ____(____ / ____(____) * ____))

ggplot(____, aes(x = ____, y = ____, fill = ____)) +
  ____() +
  coord_flip() +
  labs(title = "Gráfico 2: Noticias según tipo (falsas y reales) por si contienen imagen",
       x = "Tipo",
       y = "____",
       fill = "Contiene imagen") +
  _____minimal()

✏️ Describe aquí lo que observaste:

¿Qué tendencias se observan en la cantidad de veces que se compartieron las noticias, según su tipo (falsas o reales)?

Primero, observa las medidas de tendencia central (mínimo, máximo, media, mediana, etc.) para cada grupo.

df_fake <- df %>% 
  ____(es_fake == "Fake")

____(df_fake$fb_compartido)

df_real <- df %>% 
  ____(es_fake == "____")

summary(____$____)

Luego, genera los gráficos más adecuados.

# Podemos hacer un histograma, por ejemplo
ggplot(____, aes(x = ____)) +
  ____() +
  scale_x_log10(labels = label_comma()) +
  facet_wrap(~____) +
  labs(title = "Gráfico 3: Número de veces que las noticias fueron compartidas según tipo (falsas y reales)",
       x = "Veces compartidas",
       y = "Porcentaje") +
  _____minimal()

# También podemos hacer un boxplot
ggplot(____, aes(x = ____, y = ____)) +
  ____() +
  scale_y_log10(labels = label_comma()) +
  labs(
    title = "Gráfico 3: Número de veces que las noticias fueron compartidas según tipo (falsas y reales)",
    x = "Tipo de noticia",
    y = "Veces compartidas (escala log)"
  ) +
  _____minimal()
1
Añade la función scale_x_log10 para que el eje x se vuelva logarítmico y permita graficar mejor la amplitud de datos. Necesitarás cargar el paquete {scales}.
2
Añade la función scale_y_log10 para que el eje y se vuelva logarítmico y permita graficar mejor la amplitud de datos. Necesitarás cargar el paquete {scales}.

✏️ Describe aquí lo que observaste:

5. 🧐 Prueba chi-cuadrado de independencia

Por último, evaluaremos si existe relación entre dos variables categóricas. En este caso, queremos conocer si el uso de imágenes está asociado al tipo de noticia. Partimos de la premisa de que la inclusión de imágenes en una noticia puede estar relacionada con intentos de captar la atención, generar viralidad o aumentar el engagement, especialmente en el caso de las noticias falsas. Además, las imágenes podrían utilizarse como estrategia para legitimar la veracidad del contenido.

✏️ Escribe tu hipótesis nula aquí

H₀: No existe relación entre el tipo de noticia (falsa o real) y la presencia de imágenes.

Pista: la hipótesis alternativa sería la siguiente…

H₁: Existe relación entre el tipo de noticia y la presencia de imágenes.

Primero genera la tabla de frecuencias observadas y esperadas.

tbl <- table(____$____, ____$____)
____(tbl)$____ %>% 
  prop.table(2) *____
____(tbl)$____ %>% 
  prop.table(2) *____

Ahora, realiza la prueba de chi-cuadrado.

____(tbl)
____(tbl)$p.value

✏️ Interpreta aquí los resultados: ✏️ ¿Qué indica e valor-p? ✏️ ¿Rechazas o no la hipótesis nula?