R et le reporting — la guerre des gangs

On ne vous le répétera jamais assez, mais chez ThinkR, nous vivons R. Nous parlons R, mangeons R, respirons R. Cette passion, nous aimons la partager : avouons-le, produire un ggplot parfait issu d’une analyse statistique alambiquée, c’est le nirvana, et on a toute de suite envie de le montrer au monde entier.

Ça tombe bien, notre logiciel préféré a quelques fonctionnalités sous le coude pour faciliter la communication de nos résultats. Leurs noms ? RMarkdown et {ReporteRs}. Petit guide du reporting à l’usage des amoureux de R.

 

Le reporting, pour quoi faire ?

Pas facile pour un profane de comprendre ce qu’il se cache derrière les lignes de code qu’un développeur tape dans son interface de prédilection. Le premier pas pour réconcilier code et langage lisible de tous ? L’adoption de la programmation lettrée, approche consistant à entremêler du langage naturel et du code source pour exécuter des programmes et produire la documentation qui en résulte, par « tissage » des deux (weave). Pourtant, même si cette approche « littéraire » rend les lignes de codes plus accessibles, on reste loin d’un résultat transmissible à vos clients… Et pour ça, une seule solution : le reporting !

En pratique, de quoi parle-t-on ? Le reporting est, tout simplement, le fait de créer un document décrivant clairement votre méthode et/ou les résultats de vos analyses de façon intelligible. Car ne l’oubliez pas, certains de vos collaborateurs n’ont pas la bosse des maths, et ont besoin d’un coup de pouce pour comprendre leurs données — la recette : un bon cocktail de vulgarisation et de visualisation. Les outils de reporting sont indiqués dès lors que des analyses récurrentes sont réalisées, qu’ils soient hackers de croissance, instrument de communication ou obligation réglementaires.

« Et R, dans tout ça ? », nous dites-vous ? Présentation de deux outils incontournables pour des rapports de qualité.

 

RMarkdown, pour la recherche reproductible…

Disponible en natif sur RStudio, RMarkdown offre une interface pour la création de documents (HTML, PDF ou Word) englobant texte, code R et graphiques. Cette implémentation est basée sur Markdown, un langage de balisage simplifié permettant de donner des instructions de mise en forme de contenu. Ce qui vous permet de sortir votre belle plume, vos formules les plus élégantes et vos plus beaux graphiques.

Le Rmd (pour les intimes) reste la solution de choix pour la recherche reproductible. C’est un format qui permet plus de transparence dans vos travaux — avec un rapport fixe décrivant votre méthode et déroulant le code utilisé, vous montrez patte blanche en rendant votre expérience reproductible, comme le serait un cahier de laboratoire… Ce qui est la base de l’analyse scientifique, n’est-il pas ?

 

… et un peu plus loin avec {ReporteRs} !

Vous l’avez compris : RMarkdown a de beaux jours devant lui, notamment dans la communauté scientifique, qui y voit un vecteur de transparence et d’accélération de la recherche — le code utilisé pour une expérience est directement accessible, et le résultat non falsifiable. Pourtant, ce format souffre d’une faiblesse : le rendu écrit n’est pas forcément des plus sexys. Son alternative ? Le package {ReporteRs}.

Développée par David Gohel, cette extension vous permet d’exporter les résultats de vos scripts R directement dans Word et PowerPoint… et surtout de tirer profit de toute la mise en page de la suite Microsoft Office — titres, tableaux customisables à l’infini (une gageure dans RMarkdown), graphiques éditables, saut de page, listes, tables des matières… Autre atout (et pas des moindres) : la possibilité d’utiliser un template prédéfini !

La différence fondamentale entre {ReporteRs} et RMarkdown ? Le premier s’écrit en code R, avec un lot de fonctions dédiées, là où le second s’appuie sur la grammaire Markdown : le fichier .Rmd ressemble à un bloc-notes et le « tricotage » (avec le package {knitr}) entre le texte et le code se fait sans douleurs directement dans l’interface RStudio.

De fait, il n’est pas toujours facile de choisir entre ces deux solutions (d’autant qu’il existe encore d’autres solutions de reporting). L’outil idéal dépendra d’abord de votre domaine de prédilection : ReporteRs permet de créer des documents Words et PowerPoint entièrement éditables, avec des graphiques vectorisés que vous ou d’autres pourront modifier directement dans le traitement de texte… une flexibilité qui pourra froisser certains membres de la communauté scientifique, mais pourra plaire à d’autres.

Notre avis sur ces solutions ? Chez ThinkR, nous n’aimons pas faire de jaloux — nous connaissons les deux sur le bout des doigts !

 

Rmarkdown ou ReporteRs ?


À propos de l'auteur

Colin Fay

Colin Fay

Data scientist & R Hacker


Commentaires


À lire également