Qu'est-ce que le format de fichier R ?
Les fichiers .r (conventionnellement écrits .R avec une majuscule) contiennent le code source du langage de programmation statistique R, créé par Ross Ihaka et Robert Gentleman à l'Université d'Auckland en 1993. R est le langage dominant pour le calcul statistique, la bioinformatique et la science des données dans la recherche académique et scientifique.
Un script .R est un texte brut en UTF-8 sans structure obligatoire - les instructions s'exécutent de haut en bas, ou définissent des fonctions pour un chargement ultérieur via source(). Les scripts typiques commencent par des appels library() pour charger des packages, utilisent l'opérateur <- pour l'assignation, appliquent la manipulation de données tidyverse ou base-R, ajustent des modèles statistiques avec des fonctions telles que lm() ou glm(), et génèrent des visualisations via ggplot2 ou les graphiques de base. Les commentaires sont préfixés par #. Les scripts s'exécutent depuis la ligne de commande avec Rscript script.R ou de manière interactive dans RStudio. Sur les systèmes Unix, le shebang #!/usr/bin/env Rscript permet une exécution directe.
Un désagrément pratique : sur les systèmes de fichiers sensibles à la casse (Linux, macOS), .R et .r sont des fichiers distincts. GitHub Linguist a historiquement identifié à tort .r comme du REBOL plutôt que du R ; la communauté REBOL est depuis passée aux extensions .reb et .r3 pour réduire l'ambiguïté. Les formats associés incluent R Markdown (.rmd) pour la programmation lettrée et RData (.rdata) pour les objets R sérialisés.
Sécurité et sûreté
RISQUE : MEDIUMLes scripts R sont du code interprété - l'exécution d'un fichier .R non fiable peut effectuer des opérations arbitraires sur le système de fichiers, effectuer des requêtes réseau et installer des packages. Avant d'exécuter un script provenant d'une source inconnue, ouvrez-le dans un éditeur de texte pour examiner son contenu. Le code R peut appeler system() et shell() pour exécuter des commandes du système d'exploitation. Traitez les fichiers .R inconnus comme n'importe quel autre script exécutable.
Détails du format
en bref- Script REBOL - REBOL (Relative Expression Based Object Language) utilisait historiquement .r ; la communauté préfère désormais .reb / .r3 pour éviter toute confusion avec les scripts statistiques R.
Programmes qui ouvrent les fichiers R
Détails techniques
spécifications approfondies| Encodage du texte | UTF-8 (recommandé et par défaut dans le R moderne) ; ASCII ou paramètres régionaux du système acceptés par les anciennes versions |
| Syntaxe des commentaires | Préfixe `#` pour les commentaires de ligne et en ligne ; pas de syntaxe de commentaire de bloc dans le R de base |
| Opérateur d'assignation | `<-` (style R canonique) ; `=` est valide mais conventionnellement réservé au passage d'arguments de fonction |
| Sensibilité à la casse | Sur les systèmes de fichiers sensibles à la casse (Linux, macOS), `.R` et `.r` sont distincts ; GitHub Linguist peut classer à tort `.r` comme REBOL |
| Méthodes d'exécution | `Rscript script.R` depuis la ligne de commande ; `source("script.R")` au sein d'une session R ; REPL interactif dans RStudio |
| Support du shebang | `#!/usr/bin/env Rscript` sur la première ligne permet l'exécution directe sous Unix lorsque le fichier est marqué comme exécutable |
| Système de packages | `library(pkgname)` importe les packages ; plus de 20 000 packages sur le CRAN ; Bioconductor pour les flux de travail en génomique |
| Aucune structure obligatoire | Aucune fonction `main()` ou déclaration de module requise ; l'exécution se fait de haut en bas |
| Taille typique de fichier | Moins de 100 Ko pour la plupart des scripts analytiques ; peut atteindre plusieurs Mo si de grands vecteurs de données sont intégrés littéralement |
| IDE dominant | RStudio (Posit) - fournit la coloration syntaxique, un REPL intégré, un visualiseur de graphiques et la gestion des packages pour les fichiers `.R` |
| Rôles dans l'écosystème | Modélisation statistique (`lm()`, `glm()`), manipulation de données (dplyr, tidyr), visualisation (`ggplot2`), bioinformatique (Bioconductor) |
| Pratique de reproductibilité | `set.seed()` pour la reproductibilité stochastique ; `sessionInfo()` pour enregistrer l'environnement d'exécution pour les analyses publiées |
| Publié | 1993 (R language); .R extension used since R's public availability (~1995) |
| Dernière version | R 4.4.x (2024); language and .R format unchanged in structure |
| Standard ouvert | Oui · libre de droits |
| Spécification | www.r-project.org |
Conversions R
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers R.