vignettes/m06_exercices_module_RMarkdown.Rmd
m06_exercices_module_RMarkdown.RmdLes résultats des exercices sont à consulter sur https://mtes-mct.github.io/savoirfR/cheesedown/.
Résultat attendu :
Nous allons travailler sur les informations du site www.cheese.com. Nous nous appuyons pour cela sur l’exemple proposé pour l’évènement tidytuesday du 4 juin 2024.
Le fichier markdown qui sera créé pendant toute cette formation parlera donc de fromage !
visual pour avoir un aperçu du rendu
finalRésultat attendu :
Pour récupérer les données tidytuesday :
load("extdata/data_fromage_tidytuesday.RData") depuis votre
projet d’exercices
créé avec savoirfR ou
tidytuesdayR::tt_load('2024-06-04')
(prérequis : avoir installé le package tidytuesdayR et configuré votre
.Renviron avec un token github d’accès personnel,
ie créé une variable GITHUB_PAT)
load("extdata/data_fromage_tidytuesday.RData")Ajouter une ligne de texte qui indique le nombre de fromages disponibles dans la dataframe (cette valeur doit être calculée automatiquement)
Créer une variable dans cette dataframe pour indiquer si
l’origine des fromages (colonne country) est française ou
non
Ajouter un chunk créant un graphique en barres qui indique le nombre de fromage par origine (FR ou non-FR). Le graphique devra apparaître dans le document final, pas le code pour le créer.
Ajouter une image d’illustration en tête d’article
Générer le document
Résultat attendu :
En repartant du fichier .Rmd de l’exercice précédent :
Résultat attendu :
Par exemple, on peut regrouper les fromages par type simplifié et représenter le pourcentage de matières grasses par type. C’est l’occasion de découvrir ou re-découvrir certaines nouvelles fonctions de dplyr apparues en 2026 :
data_fromage_1 <- data_fromage %>%
filter_out(when_any(is.na(fat_content),
is.na(type))) %>%
mutate(type = replace_when(type,
str_detect(type, 'soft') ~ 'molle',
str_detect(type, 'firm') ~ 'ferme',
str_detect(type, 'hard') ~ 'dure')) %>%
mutate(fat_content = as.numeric(str_extract(fat_content, "^\\d+(\\.\\d+)?"))) %>%
filter(country==params$country)
ggplot(data_fromage_1) +
geom_violin(aes(x = type, y = fat_content, fill = type)) +
scale_fill_manual(values = c("dure" = "#EEDC82", "ferme" = "#FFFACD", "molle" = "#FFFAF0")) +
theme_gouv(plot_title_size = 12,
subtitle_size = 12) +
labs(title = "% de matière grasse par type de pâte de fromage",
subtitle = params$country,
x = "Type de pâte",
y = "% de matière grasse") +
theme(legend.position = 'none')Résultat attendu :
Résultat attendu :