InseeFrLab / utilitR

Source of the utilitR French R documentation
https://book.utilitr.org/
Other
75 stars 56 forks source link

Proposition de fiche "Produire des tableaux de diffusion" #454

Open JulienBlasco opened 1 year ago

JulienBlasco commented 1 year ago

Bonjour à toutes et à tous,

Il me semble qu'il serait utile d'ajouter une section au chapitre "Produire des sorties avec R" centrée sur les tableaux de diffusion. Par là, on entend les tableaux issus de traitements statistiques destinés à la lecture par l'humain (sauf si vous avez une meilleure définition). A la différence des tables manipulées dans des traitements statistiques, ils ne respectent pas forcément la règle "une ligne = une observation" et "une colonne = une variable", ils contiennent des éléments de formatage, des titres/notes etc. Leurs usages sont multiples : notes internes, publications, présentations, sites web, etc.

Pour ouvrir la discussion, j'ai déjà réfléchi à une ébauche de plan (à discuter) :

1. Qu'est-ce qu'un tableau de diffusion 1. Usages et types de sorties possibles 2. Différences avec un tableau de données "tidy" 2. Passer d'un tableau "tidy" à un tableau de diffusion 1. Formatage des tableaux 1. Label des variables et des modalités 2. Formatage des nombres 4. Titres et notes de lecture 5. En-têtes de lignes et de colonnes 6. Fusionner des cellules 2. Synthétiser des résultats 1. Ajouter des lignes ou des colonnes "Ensemble" 2. Stats "par groupes" 3. Régressions logistiques 3. Diffuser son tableau 1. Intégration à R Markdown 2. Export en Excel/ODS 3. Autres exports

Si l'idée vous paraît bonne, alors je veux bien participer à la rédaction d'une telle fiche. Je serais cependant ravi de travailler avec quelqu'un qui a déjà réfléchi au sujet et/ou a déjà contribué à la rédaction d'utilitR.

Il reste la question du package : si je comprends bien la ligne éditoriale d'utilitR, il s'agirait de choisir un package et de s'y tenir tout au long de la fiche. Là-dessus, j'ouvre le débat et m'en remets à votre expérience et à vos recommandations.

ddotta commented 1 year ago

Super idée !

De ce que j'ai pu expérimenter de mon côté, il y a 2 packages qui se détachent en ce qui concerne les tableaux de diffusion : {gt} et {flextable}

Si on met en application les règles de décision d'utilitr pour choisir un package et avoir quelques indices :

gt flextable
Mainteneurs Posit et notamment Richard Iannone ardata et notamment David Gohel
Téléchargements 45k par mois 44k par mois
Etoiles 1,6k 437
Issues et PR 716 issues et 374 PR 424 issues et 39 PR

Autre point sur {gt}, c'est l'existence d'autres packages comme par exemple {gtExtras} qui ajoutent d'autres fonctionnalités.
Une petite remarque aussi, aucun de ces 2 packages ne propose une exportation native en Excel/ODS (cf.3.ii du plan de Julien) ce qui peut être assez demandé par les utilisateurs.

Peut-être que la fiche peut présenter les 2 (même si cela demande plus de travail) ? Et il y a bien sûr d'autres packages à considérer, par exemple {kableextra} Ce n'est qu'un début de discussion...

JulienBlasco commented 1 year ago

Merci pour ces infos Damien !

Les deux sont très intéressants. On peut également ajouter huxtable, qui est un peu plus confidentiel, mais a l'avantage de proposer un export natif en Excel.

La production d'excel/ods me semble indispensable, ne serait-ce que pour les chargés d'études à l'Insee ou en SSM qui doivent produire ce type de sortie pour leurs publications. Mais peut-être que ça demande une solution technique différente des autres tableaux de diffusion ?

ddotta commented 1 year ago

Je suis d'accord pour dire que la production d'excel/ODS reste très demandé dans la statistique publique....
Merci pour huxtable que je ne connaissais pas. En tout cas, les auteurs du package valident déjà notre choix initial de packages pour les tableaux de diffusion https://hughjonesd.github.io/huxtable/design-principles.html#comparing-huxtable-with-other-packages

oliviermeslin commented 1 year ago

Merci beaucoup @JulienBlasco pour la suggestion très détaillée, et @ddotta pour les réactions. Cette fiche couvrirait un vrai manque dans utilitR, et je suis d'accord que la recommandation d'utilitR doit impérativement couvrir ODS/Excel.

Ceci dit, la bonne recommandation ne me semble pas claire à ce stade. Voici quelques réflexions issues de ma pratique de production de tableaux LaTeX, je serais content de connaître votre avis:

JulienBlasco commented 1 year ago

Hello Olivier, merci pour tes remarques. 

Ton découpage des taches me parait pertinent. Il me semble qu’il est plus logique de considérer l’étape 1 « calcul de statistiques agrégées » comme le rôle des fonctions et packages de traitement statistique. Pour moi le monde des « tableaux de diffusion » ne commence vraiment qu’à partir des étapes 2 et 3 que tu décris (éventuellement on peut inclure dans 2 le calcul de lignes et de colonnes de totaux). 

Par ailleurs,  il semblerait qu’on ne trouvera pas de package qui permet l’export vers l’ensemble des formats possibles et imaginables. Je pense qu’on va être obligés de se diriger vers la recommandation d’un ensemble de propositions, selon les besoins. Et peut-être qu’il faudra proposer une solution maison pour la partie Excel ! Openxlsx propose en effet pas mal de possibilités. 

L’ajout de l’export en Latex est une bonne idée, même si les utilisateurs potentiels sont moins nombreux donc moins prioritaire je dirais (en tout cas dans la stat publique). 

Sur le fait de recommander un package à la maintenance fragile, il y a peut-être un compromis à trouver, je ne sais pas. Gt sera peut-être l’option la plus safe vu que c’est maintenu par RStudio.

ddotta commented 1 year ago

Salut,

JulienBlasco commented 1 year ago
maellefontaine2 commented 11 months ago

Merci @JulienBlasco pour le lien sur cette issue car effectivement, si on fait une fiche sur les stats desc, il faut qu'on se coordonne sur où finit l'une et où commence l'autre ! Il me semble quand même qu'il y a bien lieu d'en faire deux différentes.