Para esta análise foram utilizados dados das séries de superheróis Flash, Arrow, Smaville, DC’s Legends of Tommorow, Gotham, Daredevil e Marvel’s Agent Carter retirados do IMDB.

episodes = read_csv(here("data/series_from_imdb.csv"), 
                    progress = FALSE,
                    col_types = cols(.default = col_double(), 
                                     series_name = col_character(), 
                                     episode = col_character(), 
                                     url = col_character(),
                                     season = col_character()))
myseries = episodes %>% filter(series_name %in% c("Flash", "Arrow", "Smallville", "DCs Legends of Tomorrow", "Gotham", "Daredevil","Agent Carter"))

As melhores séries recebem maior quantidade de avaliações?

seriesheroes <- myseries %>% group_by(series_name) %>% summarise(rating = median(user_rating), totalvotos = sum(user_votes))

seriesheroes %>% 
  ggplot(aes(x = reorder(series_name, totalvotos), y = totalvotos, fill = rating)) +
    geom_histogram(stat = "identity") +
    scale_fill_distiller(name="Avaliação", palette = "RdPu") +
    scale_y_continuous(labels = scales::comma) + 
    coord_flip() +
    xlab("Série") + ylab("Total de votos")
## Warning: Ignoring unknown parameters: binwidth, bins, pad

Através do histograma acima temos que a série com maior número de votos (Arrow) é apenas a terceira colocada em avaliação, enquanto a série com melhor avaliação (Daredevil) ocupa o terceiro lugar em total de votos, com uma quantidade de votos bem próxima à duas outras séries, Smallville e Gotham, que tiveram um desempenho pior em avaliação.

Até agora parece que não existe muita relação entre o número total de votos e a avaliação. Vamos utilizar um correlograma para checar essa informação. A correlação é qualquer relação que envolva dependência ou associação entre duas variáveis.

numeric_episodes <- myseries[sapply(myseries, is.numeric)]
matrizCorr <- cor(numeric_episodes)
corrplot(matrizCorr, method = "number", number.cex = .6, type = "upper")

A correlação entre user_rating e user_votes é de 0.35, o que implica numa associação fraca entre as variáveis votos e avaliação.

Observando o primeiro gráfico, surgiu uma questão: Será que a quantidade de votos aumentou ao longo das temporadas em séries cujo desempenho também cresceu?

Obs.: Essa questão também está relacionada com a questão abaixo e será respondida posteriormente.

Como se dá a avaliação das séries ao longo das temporadas?

Para responder essa questão, utilizamos um gráfico de linhas. A mediana foi utilizada para medir as avaliações, já que ela não é afetada por valores extremos como a média.

seriesheroes <- myseries %>% group_by(series_name, season) %>% summarise(rating = median(user_rating))

seriesheroes %>% 
  ggplot(aes(x = as.numeric(season), y = rating, color = series_name)) +
    geom_line() +
    geom_point() +
    scale_x_continuous(breaks = 1:10) +
    scale_color_brewer(name = "Série", palette = "Accent") +
    xlab("Temporada") + ylab("Avaliação")

Com exceção da Série Agent Carter, todas as séries tiveram um aumento na nota na segunda temporada. Daredevil e DCs Legends of Tomorrow são as únicas séries cuja avaliação apenas melhorou, sendo Daredevil também a série com a melhor avaliação geral. É curioso observar também que a série Agent Carter apresentou a mesma nota nas duas temporadas. Vamos observar melhor essa série!

Avaliando as temporadas da série Agent Carter

agtcarter = myseries %>% filter(series_name %in% c("Agent Carter"))

means <- aggregate(user_rating ~  season, agtcarter, mean)

agtcarter %>% 
    ggplot(aes(x=season, y=user_rating)) + geom_boxplot() + 
    geom_jitter(width = .1, size = 3, alpha = .5, color = "green") +
    stat_summary(fun.y=mean, colour="blue", geom="point", 
               shape=18, size=3, show.legend = FALSE) + 
    geom_text(data = means, aes(label = user_rating, y = user_rating + 0.05)) +
    xlab("Temporada") + ylab("Avaliação")

Através do boxplot acima confirmamos que a mediana das avaliações é a mesma em ambas as temporadas da série. O ponto em azul e o valor imediatamente acima dele correspondem a média da avaliação das temporadas, que apresenta uma pequena diferença de uma temporada para outra.

Com o gráfico de linhas abaixo podemos observar as notas de cada um dos episódios ao longo das temporadas:

agtcarter %>% 
  ggplot(aes(x = season_ep, y = user_rating, color = season)) + 
  geom_line() +
  scale_x_continuous(breaks = 1:10) +
  geom_point() +
  scale_color_brewer(name = "Temporada", palette = "Set1") +
  xlab("Episódio") + ylab("Avaliação")

O sétimo episódio teve a maior nota em ambas as temporadas e o episódio quatro o com a nota mais baixa (na segunda temporada outros dois episódios tiveram a mesma nota). Fazendo uma breve pesquisa, é possível ver que o episódio quatro (nas duas temporadas) foi considerado pelos fãs como um filler (episódio que acrescenta pouco ao enredo da série).

Será que a quantidade de votos aumentou ao longo das temporadas em séries cujo desempenho também cresceu?

series <- myseries %>% group_by(series_name, season) %>% summarise(votos = sum(user_votes))

series %>% 
  ggplot(aes(x = as.numeric(season), y = votos, color = series_name)) +
    geom_line() +
    geom_point() +
    scale_x_continuous(breaks = 1:10) +
    scale_color_brewer(name = "Série", palette = "Accent") +
    xlab("Temporada") + ylab("Votos")

No geral, a quantidade total de votos diminuiu ao longo das temporadas, com exceção de Arrow que teve um leve aumento nos votos na segunda temporada com relação a primeira, e Smallville, que teve uma votação semelhante com o decorrer da série.

Associando o primeiro gráfico utilizado para responder a segunda questão com o gráfico acima, a única série cuja a quantidade de votos por temporada melhorou ao mesmo tempo em que houve um aumento na avaliação da série foi Arrow em sua segunda temporada.