Miranda María Pedraza Sánchez

6. Mini reto práctico

library(readr)
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(stringr)
library(ggplot2)

# Leer archivo
movies_original <- read_csv("movie_info.csv", 
                   col_types = cols(.default = "c"))

movies <- movies_original %>%
  mutate(
    critic_score = as.numeric(str_remove(critic_score, "%")),
    audience_score = as.numeric(str_remove(audience_score, "%")),
    year = str_extract(release_date, "\\d{4}"),
    year = as.numeric(year)
  )

Elige una película específica (title) y filtra la base.

Compara su puntuación de crítica y audiencia contra la media general.

peliculaTG <- movies %>% 
  filter(title == "The Godfather")

# Eliminar duplicados sin considerar url que es diferente, solo con el nombre
peliculaTG <- peliculaTG[!duplicated(peliculaTG[c("title")]), ]

# Media general de crítica y audiencia

Mcritic_score <- mean(movies$critic_score, na.rm = TRUE)
Maudience_score <- mean(movies$audience_score, na.rm = TRUE)

# Puntuación de la película "The Godfather"
TGcritic_score <- mean(peliculaTG$critic_score, na.rm = TRUE)
TGaudience_score <- mean(peliculaTG$audience_score, na.rm = TRUE)

# Comparar

descriptiveMedias<-data.frame(Mcritic_score,peliculaTG$critic_score,Maudience_score,peliculaTG$audience_score) #data.frame une las medidas anteriores en una tabla
colnames(descriptiveMedias)=c("Media crítica general", "Crítica The Godfather", "Media audiencia general", "Audiencia The Godfather")

knitr::kable(descriptiveMedias)
Media crítica general Crítica The Godfather Media audiencia general Audiencia The Godfather
57.66087 97 60.07482 98

Filtra las películas del año 1997, ¿cuál es la que tiene mayor puntuación en crítica?

peliculas_1997 <- movies %>%
  filter(year == 1997)

# Mostrar la mejor calificada por crítica
mejor_critica_1997 <- peliculas_1997 %>%
  filter(critic_score == max(critic_score, na.rm = TRUE))

descriptive1997<-data.frame(mejor_critica_1997$title,mejor_critica_1997$critic_score) #data.frame une las medidas anteriores en una tabla
colnames(descriptive1997)=c("Título", "Puntuación en crítica")

knitr::kable(descriptive1997)
Título Puntuación en crítica
A Brother’s Kiss 100
4 Little Girls 100

Crea un gráfico de dispersión sólo para las películas del año 2000 en adelante.

movies %>%
  filter(year >= 2000) %>%

# Gráfico de dispersión
  
  ggplot(data = movies, mapping = aes(x = audience_score, y = critic_score)) +
  geom_point(color = "magenta", size = 1, shape = 18) +
  labs(title = "Dispersión de audiencia vs críticos: Películas del 2000 en adelante",
       x = "Puntuación de la crítica",
       y = "Puntuación de la audiencia") +
  theme_minimal()
## Warning: Removed 3096 rows containing missing values or values outside the scale range
## (`geom_point()`).

Genera la media de las puntuaciones de crítica para el conjunto de datos anteriores a 2000 (incluido). Genera la media de las puntuaciones de crítica para el conjunto de datos posteriores a 2000. ¿Qué tan diferentes son estas medias, qué indica eso?

# Media antes o en 2000
Mcritic_score_antes2000 <- movies %>%
  filter(year <= 2000) %>%
  summarise(media = mean(critic_score, na.rm = TRUE))

# Media después del 2000
Mcritic_score_desp2000 <- movies %>%
  filter(year > 2000) %>%
  summarise(media = mean(critic_score, na.rm = TRUE))

## Diferencia

diferenciacrit <- Mcritic_score_desp2000 - Mcritic_score_antes2000

## ¿Qué tan diferentes son estas medias, qué indica eso?

interpretación<-("Se muestra una pequeña diferencia de 2.4 puntos, lo que podría significar que la crítica se ha vuelto un poco más exigente con el tiempo, o que la calidad percibida de las películas ha bajado ligeramente en décadas recientes.")

# Mostrar resultados
descriptivecrit2000<-data.frame(Mcritic_score_antes2000,Mcritic_score_desp2000, diferenciacrit, interpretación) #data.frame une las medidas anteriores en una tabla
colnames(descriptivecrit2000)=c("Crítica antes 2000", "Crítica desp. 2000", "Diferencia", "Interpretación")
rownames(descriptivecrit2000)=c("Puntuación")

knitr::kable(descriptivecrit2000)
Crítica antes 2000 Crítica desp. 2000 Diferencia Interpretación
Puntuación 58.71699 56.33541 -2.381584 Se muestra una pequeña diferencia de 2.4 puntos, lo que podría significar que la crítica se ha vuelto un poco más exigente con el tiempo, o que la calidad percibida de las películas ha bajado ligeramente en décadas recientes.

Genera la media de las puntuaciones de audiciencia para el conjunto de datos anteriores a 2000 (incluido). Genera la media de las puntuaciones de audiencia para el conjunto de datos posteriores a 2000. ¿Qué tan diferentes son estas medias, qué indica eso?

# Media antes o en 2000
Maudience_score_antes2000 <- movies %>%
  filter(year <= 2000) %>%
  summarise(media = mean(audience_score, na.rm = TRUE))

# Media después del 2000
Maudience_score_desp2000 <- movies %>%
  filter(year > 2000) %>%
  summarise(media = mean(audience_score, na.rm = TRUE))

## Diferencia

diferenciaaud <- Maudience_score_desp2000 - Maudience_score_antes2000

## ¿Qué tan diferentes son estas medias, qué indica eso?

interpretación<-("Se muestra una pequeña diferencia de 0.87 puntos, lo que podría significar que el público ha sido ligeramente más generoso con sus calificaciones en las últimas décadas, o que las películas recientes logran conectar mejor con los gustos de la audiencia actual.")

# Mostrar resultados
descriptiveaud2000<-data.frame(Maudience_score_antes2000,Maudience_score_desp2000, diferenciaaud, interpretación) #data.frame une las medidas anteriores en una tabla
colnames(descriptiveaud2000)=c("Audiencia antes 2000", "Audiencia desp. 2000", "Diferencia", "Interpretación")
rownames(descriptiveaud2000)=c("Puntuación")

knitr::kable(descriptiveaud2000)
Audiencia antes 2000 Audiencia desp. 2000 Diferencia Interpretación
Puntuación 59.52369 60.39418 0.8704951 Se muestra una pequeña diferencia de 0.87 puntos, lo que podría significar que el público ha sido ligeramente más generoso con sus calificaciones en las últimas décadas, o que las películas recientes logran conectar mejor con los gustos de la audiencia actual.