library("jsonlite") library("tidyverse") data<-fromJSON("C:\\Users\\Marianne\\Desktop\\projet-analyse-exploratoire\\db_animes\\db_animes.json") dfAnimes <- as.data.frame(data) #Filtrage des animes sortis avant 1960 (pas de télé :() et après 2021 et des OVAs, films, etc dfAnimes %>% filter(start_season$year > 1960) %>% filter(start_season$year < 2021) %>% filter(media_type == "tv") -> dfAnimes #Dedoublage de la colonne saison dfAnimes %>% mutate(annee = start_season$year) %>% mutate(saison = start_season$season) -> dfAnimes #Transformation de la colonne genre pour la rendre utilisable getgenre <- function(i){ dfAnimes[i,13][[1]][[2]] -> res return(res) } dfAnimes %>% mutate(genres = lapply(1:4691, getgenre)) -> dfAnimes #Nettoyage des colonnes non utilisées dfAnimes <- select(dfAnimes, title, mean, rank, annee, saison, num_episodes, source, genres) test <- dfAnimes test %>% mutate(genres = paste(genres, collapse=",")) -> test #Nombre d'animes durant plus de 2 cours (estimés à 30 épisodes) par an => a améliorer dfAnimes %>% filter(num_episodes>30) %>% group_by(annee) %>% count() %>% rename(nbAnimes = n) -> longbois longbois %>% ggplot(aes(annee, nbAnimes)) + geom_col() #Evolution du nombre de lettre (moyenne et médiane) dans les titres par année dfAnimes %>% group_by(annee) %>% summarise(lettres=mean(nchar(data.title))) -> dfAnimes dfAnimes %>% group_by(annee) %>% summarise(lettres=median(nchar(data.title))) -> medLettersByYear meanLettersByYear %>% ggplot(aes(annee, lettres)) + geom_col() medLettersByYear %>% ggplot(aes(annee, lettres)) + geom_col() #Evolution des 5 genres les plus représentés # Explosion de la colonne tags dfAnimes %>% mutate(annee = anime$year) %>% mutate(saison = start_season$season) -> animes_genres_doubles