Exercices complémentaires - Atelier 01

Objectif

Ces exercices sont facultatifs, à réaliser après la mission du laboratoire. Ils ne constituent pas un second travail à remettre pendant la séance. Ils ne reprennent ni les données, ni les productions « À vous » du guide. Le cas de transfert porte sur la fiabilité du service dans quatre succursales.

Jeu de données de transfert : ventes_operations_quebec.csv.

library(tidyverse)
library(janitor)

data_path <- if (file.exists("../semaine-02-r-quarto/data/ventes_operations_quebec.csv")) {
  "../semaine-02-r-quarto/data/ventes_operations_quebec.csv"
} else {
  "modules/semaine-02-r-quarto/data/ventes_operations_quebec.csv"
}

operations <- read_csv(
  data_path,
  show_col_types = FALSE
) |>
  clean_names() |>
  mutate(
    mois = as.Date(mois),
    ventes_par_client = ventes / clients
  )

Exercice 1 - Décrire le tableau

  • vérifiez les dimensions et la période couverte;
  • nommez l’unité d’observation;
  • identifiez les variables de service, de clientèle et de performance;
  • expliquez pourquoi deux lignes de la même succursale ne sont pas des doublons si elles correspondent à des mois différents.

Exercice 2 - Construire un dictionnaire rapide

Construisez un dictionnaire pour mois, region, canal_principal, clients, delai_livraison_jours, satisfaction et ventes_par_client.

Le dictionnaire doit contenir : type, unité, rôle dans une décision de service et précaution d’interprétation. Les catégories codées ne doivent pas être traitées comme des quantités.

Exercice 3 - Diagnostiquer les valeurs manquantes

Produisez un tableau donnant le nombre et la proportion de valeurs manquantes. Comparez ensuite le nombre de lignes disponibles pour une analyse de la satisfaction et pour une analyse conjointe satisfaction-délai.

disponibilite <- operations |>
  summarise(
    lignes_totales = n(),
    satisfaction_disponible = sum(!is.na(satisfaction)),
    delai_disponible = sum(!is.na(delai_livraison_jours)),
    analyse_conjointe = sum(
      !is.na(satisfaction) & !is.na(delai_livraison_jours)
    )
  )

disponibilite

Expliquez pourquoi chaque résultat doit annoncer son propre nombre d’observations.

Exercice 4 - Résumer par région et canal

Résumez plutôt par région et canal principal, afin de répondre à une question différente de celle du guide.

resume_service <- operations |>
  group_by(region, canal_principal) |>
  summarise(
    observations = n(),
    delai_median = median(delai_livraison_jours, na.rm = TRUE),
    satisfaction_mediane = median(satisfaction, na.rm = TRUE),
    ventes_par_client = sum(ventes) / sum(clients),
    .groups = "drop"
  )

resume_service

Repérez un groupe à surveiller et nommez une limite liée au petit nombre d’observations.

Exercice 5 - Produire deux graphiques

Produisez :

  1. un nuage de points satisfaction-délai, avec une couleur par région;
  2. un graphique de ventes par client selon le canal principal.

Chaque graphique doit répondre à une question écrite avant le code. Un titre ne remplace pas l’interprétation.

Exercice 6 - Choisir une priorité de prochaine analyse

Choisissez une priorité parmi la réduction des délais, l’amélioration de la satisfaction ou l’analyse des écarts de ventes par client. Appuyez votre choix avec un résultat, puis indiquez l’information qui manque pour passer de la description à une décision d’intervention.

Exercice 7 - Préparer la suite

Formulez une question sur l’association entre satisfaction et delai_livraison_jours. Ajoutez une variable de contexte et une limite causale. Vous pourrez reprendre cette question au module 3 pour découvrir la régression.

Trace finale facultative

Produisez une note Quarto autonome sur la fiabilité du service : dictionnaire ciblé, audit des données manquantes, tableau région-canal, deux graphiques, trois constats, priorité et prochaine analyse. N’utilisez pas le fichier ventes_pme_quebec.csv du guide.

Assistant IA Ouvrir le GPT du cours