utilitR icon indicating copy to clipboard operation
utilitR copied to clipboard

Restructuration de la partie manipulations de données ?

Open linogaliana opened this issue 2 years ago • 1 comments

Suite à la remarque de @pierre-lamarche sur tchap, je propose de prolonger le débat ici.

Contexte

  • Lié à #498

Remarque de Pierre:

avec la fiche arrow on utilise la grammaire tidyverse, mais on manipule des objets un peu différents Du coup j'ai peur que les lecteurs soient perdus Il faut faire quoi, dans quel contexte ? ça j'ai du mal à le trouver On est très orienté outil, pas tellement cas d'usage et donc on va satisfaire le lecteur curieux qui veut se rencarder sur arrow, mais on ne lui dit pas trop quand ça a du sens de s'en servir

Ma réponse :

je suis assez d'accord avec toi, surtout qu'a priori va s'ajouter un autre framework qui est duckdb faut peut-être repenser cette partie de la documentation comme un bloc séparé avec une introduction présentant quel framework utiliser selon les cas

Proposition

Quelque chose comme ça ?

Choisir son cadre d'analyse des données avec R

Introduction
16  Manipuler des données avec le tidyverse
17  Manipuler des données avec data.table
18  Manipuler des données avec arrow
19  Manipuler des données avec duckdb (à voir si 2 fiches ou 1 seule)

Manipuler des données avec R, en pratique

20  Manipuler des données textuelles
22  Manipuler des données spatiales
19  Joindre des tables de données
21  Utiliser des données d’enquêtes
23  L’analyse de données (ACP, ACM, ACF…)

Proposition ouverte à discussion !

linogaliana avatar Nov 23 '23 09:11 linogaliana

Merci @linogaliana et @pierre-lamarche pour la suggestion. Je pense qu'on peut distinguer deux choses en vue de construire un arbre de décision: 1/ les seuils de taille/volume, 2/ les recommandations d'usage.

Proposition de seuils

  • Données de petite taille: moins de 1M d'observations, et taille inférieure à 1 Go en CSV ou 200 Mo en Parquet;
  • Données de taille moyenne: moins de 5M d'observations, et taille inférieure à 5 Go en CSV ou 1 Go en Parquet;
  • Données volumineuses: plus de 5M d'observations, et taille inférieure à 5 Go en CSV ou 1 Go en Parquet.

Note: ces seuils se calculent sur l'ensemble des données utilisées: si vous utilisez deux tables de 1 millions et 3 millions d'observations, alors vos données font 4 millions d'observations. Idem pour la taille.

Proposition d'arbre de décision

  • Point de départ: les données sont-elles de petite taille?
    • Si oui: utiliser le tidyverse;
    • Si non: les données sont-elles de taille moyenne?
      • Si oui: les données sont-elles mises à disposition en format Parquet?
        • Si oui: utiliser arrow et duckdb;
        • Si non: savez-vous vous servir de data.table?
          • Si oui: utiliser data.table
          • Si non: utiliser arrow et duckdb.
      • Si non: utiliser arrow et duckdb.

oliviermeslin avatar Nov 23 '23 10:11 oliviermeslin