Introduction à Tidyverse

De EduTech Wiki
Aller à la navigation Aller à la recherche

Cet article est en construction: un auteur est en train de le modifier.

En principe, le ou les auteurs en question devraient bientôt présenter une meilleure version.



Introduction

Tidyverse (Wickham et al., 2019) est une collection de paquets de R qui se caractérise par le choix délibéré d'appliquer certains principes au Data Science. Les paquets qui font partie de l'écosystème de Tidyverse implémentent ces principes à travers le partage d'une syntaxe similaire, uniformité dans les formats de Input et Output des fonctions, et une philosophie commune, inspirée par la notion de Tidy data (Wickham, 2014). La flexibilité et possibilité d'extension de l'écosystème Tidyverse font ainsi que les paquets puissent être utilisés indifféremment par des novices en R ou des utilisateurs expérimentés, pour des projets simples ou complexes.

Dans cette page nous proposons un aperçu de cet écosystème, avec des exemples simples et destinés à un public novice en R. Les paquets principaux qui composent le Tidyverse sont ensuite abordés de manière plus spécifiques dans des pages dédiées ou des références à des ressources externes.

Note sur la version

Cette page se réfère à la version 1.2.X de Tidyverse (voir versionnage sémantique). Même si l'écosystème des paquets liés au Tidyverse est constamment en évolution, les informations contenues dans cet article devrait être valable dans la plupart des cas également pour des versions successives.

Crédits

L'écosystème lié à Tidyvese est en général très ouvert et attentif aux novices/débutants en R. Il existe par conséquent des nombreuses ressources dans le web - surtout en anglais - disponibles sous Licence Creative Commons qui prévoit l'utilisation libre, pour des finalités non commerciales, avec attribution de la source. Cet article reprend plusieurs concepts et quelques exemples, en les adaptant au contexte d'intérêt de ce wiki, depuis :

  • R for Data Science de Garrett Grolemund et Hadley Wickham. Il existe une traduction française du livre sous le titre R pour les data sciences.

Prérequis

Aucune connaissance préalable n'est nécessaire pour suivre le contenu de cet article. Cependant, pour maximiser sa compréhension et la possibilité d'appliquer directement les éléments traités, les articles suivants peuvent être très utils :

Code des exemples

Le code des exemples est disponible dans un repository GitHub :

  • À faire

Pour pouvoir tester le code à votre tour, il est conseillé d'avoir un un environnement de travail typique pour R. En alternative, vous pouvez utiliser une version dans le cloud que vous pouvez directement modifier sans installation sur votre poste de travail:

  • À faire

La philosophie Tidy

Tidy data

Toute la philosophie de Tidyverse est construite autour de l'organisation des données. En effet, cet aspect est souvent sous-estimé ou géré par des mythes dont l'origine est souvent incertaine ou lié à l'utilisation spécifique de certains logiciels d'analyse statistique. Un mythe assez fréquent en sciences sociales consiste dans le tableau rectangulaire qui englobe toutes les données des participants, représenté dans l'exemple suivant :

participant age faculty task1 task2 task3 question1 question2 question3
P1 27 Computer Science 162 120 200 1 2 1
P2 38 Psychology 97 126 185 5 4 3
P3 22 Other 150 177 170 7 6 7

Ce tableau présente en réalité différentes informations, même si elles sont reliées par un critère commun, c'est-à-dire le participant. On retrouve :

  • Des informations personnelles comme l'âge ou la faculté d'appartenence
  • Des informations relatives à des mesures sur trois tâches, par exemple le temps en seconds nécessaire pour mener à bien la tâche correspondante
  • Des informations relatives à un questionnaire d'évaluation sur une échelle ordinale de 1 à 7

Nous avons limité à trois tâches et à trois questions pour des raisons de brévité, mais ce type de tableaux peuvent rapidement s'étaler en largeur à plusieurs dizaines de colonnes, qui peuvent être ultérieurement intégrés, notamment, par des indices composés, comme par exemple les moyennes des tâches et des questions :

participant age faculty task1 task2 task3 question1 question2 question3 avg_tasks avg_questions
P1 27 Computer Science 162 120 200 1 2 1 160.6667 1.333333
P2 38 Psychology 97 126 185 5 4 3 136.0000 4.000000
P3 22 Other 150 177 170 7 6 7 165.6667 6.666667

Références

  • Wickham, H., & Grolemund, G. (2016). R for data science: Import, tidy, transform, visualize, and model data. O’Reilly Media, Inc.
  • Wickham, H. (2014). Tidy Data. Journal of Statistical Software, 59(10). https://doi.org/10.18637/jss.v059.i10
  • Wickham, H., Averick, M., Bryan, J., Chang, W., McGowan, L., François, R., … Yutani, H. (2019). Welcome to the Tidyverse. Journal of Open Source Software, 4(43), 1686. https://doi.org/10.21105/joss.01686