Capsule 4 - Importer et inspecter un tableau

MQT-2101 - Analyse et modélisation des données

Pourquoi ça compte

Une décision concrète

Comment savoir si R a vraiment lu ce que vous croyez avoir importé?

Une importation sans erreur ne garantit pas que le tableau a été lu comme prévu. Vérifiez ses dimensions, les types de variables et ce que représente une ligne avant de calculer.

Objectifs de la capsule

  • Importer un fichier CSV dans R.
  • Nettoyer les noms de variables.
  • Inspecter les dimensions, les types et l’unité d’observation.

Le tableau utilisé

  • Données simulées pour quatre succursales fictives au Québec.
  • Six mois, de janvier à juin 2025.
  • Une ligne représente une succursale pendant un mois.
  • Ventes en dollars canadiens; satisfaction sur 10.

Importer le fichier

library(tidyverse)
library(janitor)

ventes_operations <- readr::read_csv(
  "data/ventes_operations_quebec.csv",
  show_col_types = FALSE
) |>
  clean_names()

Pourquoi clean_names()?

Cette fonction normalise les noms de colonnes : espaces, majuscules et accents deviennent plus faciles à gérer dans le code. Elle ne nettoie pas les valeurs du tableau.

# Exemple miniature pour voir la transformation des noms
tibble("Délai moyen" = 3, "Ventes CAD" = 100) |>
  clean_names() |>
  knitr::kable()
delai_moyen ventes_cad
3 100

Dans notre CSV, les noms sont déjà normalisés : clean_names() les conserve.

Inspecter avec glimpse()

glimpse(ventes_operations)
Rows: 24
Columns: 12
$ mois                  <date> 2025-01-01, 2025-01-01, 2025-01-01, 2025-01-01,…
$ mois_nom              <chr> "janvier", "janvier", "janvier", "janvier", "fév…
$ succursale            <chr> "Montréal", "Québec", "Sherbrooke", "Trois-Riviè…
$ region                <chr> "Montréal", "Capitale-Nationale", "Estrie", "Mau…
$ surface_m2            <dbl> 540, 420, 360, 335, 540, 420, 360, 335, 540, 420…
$ campagne_locale       <chr> "non", "oui", "non", "non", "non", "non", "oui",…
$ canal_principal       <chr> "magasin", "magasin", "web", "web", "web", "maga…
$ clients               <dbl> 2254, 1858, 1506, 1199, 2162, 1682, 1585, 1458, …
$ panier_moyen          <dbl> 53.11, 59.40, 63.31, 68.21, 66.53, 55.20, 58.44,…
$ ventes                <dbl> 119710, 110365, 95345, 81784, 143838, 92846, 926…
$ delai_livraison_jours <dbl> 2.2, 3.8, 4.5, 3.5, 3.6, 1.8, 3.5, 2.6, NA, 3.9,…
$ satisfaction          <dbl> 8.3, 8.6, 7.3, 8.1, NA, 7.9, 7.8, 8.0, 7.7, 7.9,…

glimpse() montre en un coup d’œil les colonnes, leurs types et quelques valeurs.

Dimensions et unité d’observation

dim(ventes_operations)
[1] 24 12

Première valeur : le nombre de lignes. Deuxième valeur : le nombre de colonnes. Ici, une ligne correspond à une succursale pour un mois.

Lire une chaîne de commandes

  • <- enregistre le résultat dans un objet nommé.
  • |> transmet le résultat de gauche à la fonction suivante.
  • Ici, R lit le CSV, nettoie les noms, puis crée ventes_operations.
  • show_col_types = FALSE masque le message de types, pas les données.

Types de variables à repérer

Type Exemples dans le tableau
Date ou période mois
Catégorie succursale, region, canal_principal
Numérique clients, ventes, delai_livraison_jours, satisfaction
Indicateur campagne_locale

À retenir

1

Le code d’importation reste dans le .qmd.

2

clean_names() et glimpse() préparent et inspectent.

3

L’unité d’observation se nomme avant toute analyse.

Production autonome 2.4

Importez ventes_operations_quebec.csv et décrivez le tableau.

Indiquez : le code d’importation, le nombre de lignes, le nombre de colonnes et ce que représente une ligne.

Auto-vérification

  • Le tableau contient 24 lignes et 12 colonnes.
  • Une ligne représente une succursale pendant un mois.
  • Je distingue le type informatique et le sens d’une variable.