Formation-rgonomie

Utilisation de l’application Shiny Rgonomie

SSP/DEMESIS

20/06/2025

0.1 Sommaire (1/2)

Déroulement journée

  • Présentation du contexte : CERISE, R et RStudio
  • Présentation Rgonomie
  • Rgonomie : pour quoi faire ?
  • Notions préalables
    • Notions de tables, lignes/colonnes
    • Type de fichiers utilisables dans Rgonomie
    • Règles de nommage
    • Fonctionnement commun des écrans Rgonomie

0.2 Sommaire (2/2)

  • Fonctionnalités de Rgonomie
Importer une table Exporter des fichiers ou des résultats
Visualiser une table Fermer des tables
Trier des observations Création de variables (colonnes)
Filtrer des observations Recoder des variables
Sélectionner des variables Fusionner / Apparier des tables
Agréger des données Transposer ou restructurer des tables
Réaliser des tableaux de synthèse Sauvegarder le code R produit
  • Astuces diverses

0.3 Avant-propos


Ce diaporama de formation a été rédigé dans le but d’être le support visuel des formations dispensées au MASA.

Cette formation s’adresse à des agents qui ont suivi la formation R fondamentaux.

Elles peut être donné soit en distanciel soit en présentiel sur une durée d’une journée.

Ce support fait également office de mode d’emploi de l’application.

1 Contexte

1.1 Présentation Cerise - R - RStudio (1/5)

CERISE : Consolidation Et Restitution de l’Information StatistiquE : contient les fichiers échantillons, les données individuelles collectées (voire agrégées) et des programmes R pour les exploiter CERISE contient des projets (ex : fiche territoriale) avec des programmes R et des projets particuliers (ex Rgonomie) avec des scripts R exécutés dans des interfaces spécifiques sous R Shiny


Différents espaces dans CERISE :
Diffusion : fichiers échantillon et fichiers de diffusion (agrégés ou non)  Accès en lecture pour tous Partage : programmes ou projet R  Accès en lecture pour tous et selon dossier accès en écriture Personnel : Dossier personnel (programmes ou données)  Accès en lecture/écriture pour la personne, dossier non visible pour les autres agents

1.2 Présentation Cerise - R - RStudio (2/5)

R est à la fois un logiciel et un langage de programmation pour le traitement de données et l’analyse statistique. Il peut lire tous les formats de fichiers de données.
C’est un logiciel gratuit et open source
R propose un grand nombre de packages pour réaliser des traitements spécifiques ou simplifiés

RStudio permet de manipuler R avec une interface plus agréable et plus complète
RStudio est découpé en 4 fenêtres :
En haut à gauche, visualisation des scripts (programmes R) ou des données
En haut à droite, visualisation et gestion des objets en mémoire (données, variables, …)
En bas à gauche, la console affichant les logs, les résultats et permettant de saisir les lignes de commande
En bas à droite, visualisation par défaut des répertoires (visualisation possible des packages, graphiques ou aides)

1.3 Présentation Cerise - R - RStudio (3/5)

1.4 Présentation Cerise - R - RStudio (4/5)

La fenêtre en haut à gauche permet de visualiser : Les scripts R (programmes)

Pour soumettre (exécuter) la ligne de code ou la sélection de lignes, il faut cliquer sur “Run” ou faire CTRL + Entrée (à noter que dans le cadre d’un projet (ex Rgonomie), il faut cliquer sur “Run App”.

1.5 Présentation Cerise - R - RStudio (5/5)

La fenêtre en bas à droite comporte 6 onglets, c’est l’onglet Files qui est actif par défaut, le répertoire par défaut est celui de l’utilisateur (espace personnel)

2 Présentation

2.1 Présentation de Rgonomie (1/5)

  • L’objectif est de proposer une interface graphique évitant à un utilisateur de connaitre le langage R pour exploiter des fichiers de données et réaliser des traitements statistiques de base.

  • Rgonomie a été développé au DEMESIS en 2018.

  • Rgonomie est codé en R avec le package Shiny permettant d’encapsuler les programmes R dans une interface Web plus conviviale.

  • Les fonctionnalités disponibles sont restreintes à des traitements basiques.

  • Rgonomie génère la syntaxe R nécessaire aux manipulations effectuées par l’utilisateur via l’interface puis les exécute.

  • Cette syntaxe R peut être récupérée pour une exécution ultérieure dans RStudio

2.2 Présentation de Rgonomie (2/5)

Pour accéder à Rgonomie, il faut depuis Cerise dans la fenêtre de répertoire (onglet Files), aller dans :

“CERISE/01-Espace-de-Partage/SSP/BMIS/Rgonomie/Production”

Puis ouvrir (double clic) le projet “Rgonomie.Rproj”

Puis ouvrir (double clic) le programme “Rgonomie.R”

Dans la fenêtre de visualisation du programme cliquer sur le bouton “Run App”

Le programme s’exécute et l’application s’affiche à l’écran.

2.3 Présentation de Rgonomie (3/5)

Ecran Rgonomie

2 zones :

  • Zone menu (dashboard)
  • Zone d’actions

3ème zone possible :

  • Zone visualisation syntaxe générée et/ou table résultat

2.4 Présentation de Rgonomie (4/5)

Tant que la fenêtre du navigateur est présente, le programme rgonomie.R tourne toujours : il est impossible de lancer un autre programme R pendant l’utilisation de Rgonomie.
Le programme rgonomie.r s’arrête lorsque l’on ferme la fenêtre du navigateur, ou que l’on clique sur le bouton stop de la console.

2.5 Présentation de Rgonomie (5/5)

  • Rgonomie utilise de nombreux objets temporaires (tables, fonctions, …). Tous ces objets, créés en mémoire par Rgonomie sont supprimés à la fermeture de Rgonomie, à l’exception des tables créées par l’utilisateur pendant sa session Rgonomie. Ces tables peuvent être récupérées depuis RStudio


  • Bien penser en fin d’utilisation, après la fermeture de la fenêtre du navigateur de quitter le projet, afin de ne pas encombrer l’espace de travail de Cerise. Pour cela, cliquer sur la flèche à coté du nom du projet, puis choisir Close Project. On retourne alors dans Cerise où l’on peut quitter la session.

2.6 Précautions d’usage Rgonomie

  • Rgonomie est situé dans un espace partagé sous Cerise.

  • Les utilisateurs (vous) ont donc les droits d’écriture dans ce répertoire

=> Il s’agit donc de d’être précautionneux sur ce répertoire, en particulier :
- Ne pas modifier le code de l’application
- Ne pas créer de répertoires personnels («mes_exercices»)
- Ne pas installer de packages lors de l’utilisation de Rgonomie

3 Rgonomie : pour quoi faire ?

3.1 Rgonomie : pour quoi faire ? (1/2)

Exploiter des données : par exemple les données du RA2020
Répartition par département
- des exploitations
- de la SAU
- des UGB et des en-ayant UGB
- des ETP et ETP moyen par exploitation
- de la PBS et PBS moyenne par exploitation
- en ajoutant un total régional

3.2 Rgonomie : pour quoi faire ? (2/2)

Exploiter des données
par exemple les données du RA2020 :

  • Répartition par département des exploitations, de la SAU, des UGB et des en-ayant UGB, des ETP et ETP moyen par exploitation, de la PBS et de la PBS moyenne par exploitation en ajoutant un total régional

  • Répartition par département et par dimension économique du nombre d’exploitations et des ETP

  • Répartition par département et par statut juridique de la PBS avec PBS moyenne par exploitation

Allons-y ensemble

4 Notions préalables

4.1 Règles de nommage dans R

  • R (donc Rgonomie) est assez souple dans le nommage des objets mais ….

  • Règle impérative : Les noms doivent commencer par une lettre (pas de chiffre en début de nom de table ou de variable)

  • Ce qui est autorisé :

    • Majuscules ou minuscules (elles sont gérées différemment)
    • Chiffres, underscore (_), point (.)
  • Ce qui est interdit :

    • Utiliser le tiret (-)
    • Utiliser certains noms réservés au système (else, for, T, F, …)
  • Ce qui est déconseillé :

    • Utiliser des caractères accentués
    • Utiliser des symboles spéciaux ($,&,…)

4.2 Notions de tables (1/4)

Une table est constituée de lignes (observations) et de colonnes (variables) et possède un identifiant

4.3 Notions de tables (2/4)

  • La 1ere ligne contient habituellement le nom des colonnes (variables)

  • Chaque ligne représente généralement une unité statistique (exploitation, parcelle, abattoir, enquêteur, ….)

  • Chaque unité statistique est identifiée par une variable (code) qui lui permet d’être repérée de manière unique (N° sécu, Pacage, id_dossier, n° EDE, ….)

    • Prénom et nom ne constituent pas un identifiant
  • 1 ligne par US : table en structure simple

  • Plusieurs lignes par US : table en structures répétées

4.4 Notions de tables (3/4)

Cas particulier des fichiers csv ou txt

  • Peuvent parfois ne pas contenir en 1ere ligne les noms des colonnes

  • Il faut repérer le séparateur de colonnes (le point-virgule, la virgule, la marque de tabulation, …) et le séparateur décimal (virgule ou point)

  • Il faut connaitre l’encodage (UTF_8, windows, …)

4.5 Notions de tables (4/4)

  • Valeurs manquantes : Une valeur manquante est une donnée qui n’a pas été collectée et qui n’a pas encore fait l’objet d’une imputation

  • Attention Par défaut, dans ses calculs, R ne fournit pas de résultat en cas de calcul contenant des valeurs manquantes.

  • Une valeur manquante dans R est indiquée par NA

  • Il sera très important lors de la création de nouvelles variables de bien gérer les valeurs manquantes

    • Utilisation de na.rm=TRUE lorsque c’est possible, sinon
      • Exclusion des lignes avec valeurs manquantes
      • Remplacement des valeurs manquantes par 0
      • Intégrer dans le calcul un test sur la valeur manquante





4.6 Import de fichiers - Type de fichiers

Rgonomie permet d’importer des tables de données dans l’environnement R, depuis le poste local ou depuis le serveur Cerise, dans différents formats :

  • Rdata ou rds (R)
  • sav (SPSS)
  • sas7bdat (SAS)
  • xlsx, xls (Excel)
  • ods (LibreOffice)
  • parquet
  • Fichiers de données de type texte : csv. Pour ces fichiers csv, une fenêtre demande les paramètres du format (séparateur de champ, type des champs, ….)

Le format est automatiquement détecté grâce à l’extension du fichier

4.7 Fonctionnement commun – Ecrans Rgonomie

Une fois, les tables importées, les fonctionnalités offertes proposent des modalités communes :

  • Sélection de la table
    Ne propose que les tables importées ou créées lors de l’utilisation d’une fonctionnalité
  • Nom de la table résultat
    Remettre le même nom écrase la table existante
    Saisir un autre nom crée une table supplémentaire
  • Valider
    Permet de tester les choix réalisés, la syntaxe s’écrit dans la zone de syntaxe sans s’exécuter mais le résultat potentiel s’affiche dans la zone résultat sans modifier la table existante (ou résultat)
  • Exécuter la commande
    En cochant, on exécute la commande et les modifications
  • Zone de syntaxe
    Affiche la syntaxe produite par la commande (exécutée ou non)

5 Fonctionnalités Rgonomie

5.1 Importer une table (1/3)

5.2 Importer une table (2/3)

5.3 Importer une table (3/3)

5.4 Visualiser une table

5.5 Trier une table

5.6 Filtrer les observations

5.7 Sélectionner les colonnes (variables)

5.8 Agréger une table (1/2)

5.9 Agréger une table (2/2)

5.10 Réaliser des tableaux (1/4)

5.11 Réaliser des tableaux (2/4)

5.12 Réaliser des tableaux (3/4)

5.13 Réaliser des tableaux (4/4)

5.14 Exporter une table

5.15 Fermer une table

5.16 Création de variables (1/6)

5.17 Création de variables (2/6)

5.18 Création de variables (3/6)

5.19 Création de variables (4/6)

5.20 Création de variables (5/6)

5.21 Création de variables (6/6)

5.22 Remplacer des valeurs (1/2)

5.23 Remplacer des valeurs (2/2)

5.24 Fusionner des tables - Ajout de lignes

5.25 Fusionner des tables - Ajout de colonnes (1/4)

5.26 Fusionner des tables - Ajout de colonnes (2/4)

5.27 Fusionner des tables - Ajout de colonnes (3/4)

5.28 Fusionner des tables - Ajout de colonnes (4/4)

5.29 Transposer une table

5.30 Restructurer une table (1/5)

5.31 Restructurer une table de lignes en colonnes (2/5)

5.32 Restructurer une table de lignes en colonnes (3/5)

5.33 Restructurer une table de colonnes en lignes (4/5)

5.34 Restructurer une table de colonnes en lignes (5/5)

5.35 Exporter du code (1/2)

5.36 Exporter du code (2/2)

6 Astuces

6.1 Analyser une variables (1/3)

6.2 Analyser une variables (2/3)

6.3 Analyser une variables (3/3)

6.4 Utiliser le code R (1/2) (Cerise only)

6.5 Utiliser le code R (2/2) (Cerise only)