Les scripts dans R et RStudio (2024)

Nadia Aubin-Horth

Frédéric Maps

Philippe Massicotte

Objectifs de la capsule

À la fin de cette capsule, vous serez en mesure de:

  1. Comprendre ce qu’est un script et son utilité
  2. Comprendre la trinité du bon script: clair, organisé et commenté
  3. Optimiser l’utilisation des panneaux de l’interface Rstudio.

Capsule vidéo

Les scripts dans R et RStudio (1)

Télécharger le script R de la vidéo (Faire bouton droit -> enregistrer sous...)

Exercices

Veuillez noter qu’il est possible d’avoir plus d’une bonne réponse par question. Vous pouvez reprendre chaque exercice grâce aux boutons "Start Over" ou "Try Again" Le bouton "hint"" est là pour être utilisé!

Les scripts dans R

Quiz

Modifier le code suivant pour qu'il fonctionne correctement.

# Générer 100 nombres aléatoirementx <- rnorm(100)# Calculer la moyenne du vecteur xmean(x)
"Le signe # permet de commenter une ligne de commande."

Matériel accompagnateur

Création d'un script

Afin d'optimiser son travail dans R et de s'assurer au maximum de sa reproductibilité par quelqu'un d'autre, ou par soi-même dans le futur, le script est un outil essentiel! Un script R est simplement un fichier texte portant l'extension .R et peut être vu comme une recette: il regroupe, dans un ordre logique et précis, les différentes étapes à exécuter pour réaliser un ensemble de tâches dans le but d'obtenir un résultat identique à chaque fois.

Ainsi, un script permet d'organiser son travail, de le commenter, de le compléter de façon itérative et même de détecter facilement certaines erreurs.

Supposons les commandes R suivantes qui auraient été tapées dans la console pour explorer les résultats du sondage effectué dans le cours de biostatistiques BIO-1006 du programme de baccalauréat en Biologie de l’Université Laval.

donnees <- read.table( file="BIO1006_H2018_Echantillon.csv", header=TRUE, sep=",", dec=".")names(donnees)summary(donnees)range(donnees$taille_cm)hist(donnees$taille_cm)if( min(donnees$taille_cm) < 100 ) { i <- which.min(donnees$taille_cm); data.new <- donnees[-i,] }donnees[i,]test <- aov(donnees$taille_cm[-i] ~ donnees$genre[-i])summary(test)donnees_new <- donnees[-i,]boxplot(donnees_new$taille_cm ~ donnees_new$genre)

Dans RStudio, l'historique de ces commandes est affiché dans la fenêtre History.

Les scripts dans R et RStudio (2)

À ce stade, ces commandes ne font pas encore partie d'un script R. Pour créer un script à partir de notre historique de commandes:

  1. Créer un nouveau script (File -> New File -> R Script).
  2. Sélectionner les commandes de l'historique que nous désirons envoyer dans le script.
  3. Cliquer sur le bouton To Source pour copier les commandes dans le script qui été créé.
  4. Sauvegarder le script dans un fichier portant l'extension .R. Comme pour les noms de variables, il est important de choisir un nom de fichier représentatif. Cela vous aidera à vous retrouver lorsque votre projet contiendra plusieurs scripts. Par exemple, ici un bon choix aurait pu être exploration_sondage_bio1006.R.

Les scripts dans R et RStudio (3)

Indentation du code

Indenter correctement le code d'un script fait partie des bonnes pratiques que vous devriez mettre en oeuvre lorsque vous développez du code R. Bien que l'indentation ne soit pas nécessaire d'un point de vue technique, elle vous aidera à mieux lire votre code et vous permettra de repérer les erreurs potentielles.

Info! Un bon style de codage équivaut à utiliser une ponctuation correcte. Vous pouvez vous en passer, mais cela rend les choses plus faciles à lire.1

Dans l'exemple qui suit, on constate que la deuxième version est plus facile à lire, voire à comprendre!

# Fonctionne, mais plus difficile à lireaverage<-mean(feet/12+inches,na.rm=TRUE)# Le code est maintenant plus aéré, ce qui facilite sa lectureaverage <- mean(feet / 12 + inches, na.rm = TRUE)

Reprenons le bloc de code lié à l'exploration des données du sondage.

donnees <- read.table( file="BIO1006_H2018_Echantillon.csv", header=TRUE, sep=",", dec=".")names(donnees)summary(donnees)range(donnees$taille_cm)hist(donnees$taille_cm)if( min(donnees$taille_cm) < 100 ) { i <- which.min(donnees$taille_cm); data.new <- donnees[-i,] }donnees[i,]test <- aov(donnees$taille_cm[-i] ~ donnees$genre[-i])summary(test)donnees_new <- donnees[-i,]boxplot(donnees_new$taille_cm ~ donnees_new$genre)

On constate que le code est très compact et difficile à lire. Heureusem*nt, RStudio peut nous aider à indenter correctement ce bloc de code. Pour ce faire, il suffit de sélectionner les lignes de code à indenter et d'utiliser la combinaison de touches Ctrl + Shift + A.

Les scripts dans R et RStudio (4)

Le code nouvellement formaté devrait ressembler à ceci.

donnees <- read.table( file = "BIO1006_H2018_Echantillon.csv", header = TRUE, sep = ",", dec = "." )names(donnees)summary(donnees)range(donnees$taille_cm)hist(donnees$taille_cm)if (min(donnees$taille_cm) < 100) { i <- which.min(donnees$taille_cm) data.new <- donnees[-i, ]}donnees[i, ]test <- aov(donnees$taille_cm[-i] ~ donnees$genre[-i])summary(test)donnees_new <- donnees[-i, ]boxplot(donnees_new$taille_cm ~ donnees_new$genre)

Commenter le code

Les commentaires sont essentiels et rendent le code plus clair. Il est donc très important de commenter votre code afin de garder une trace de ce qui a été fait. Dans R, un commentaire est une ou plusieurs lignes de texte ignorée(s) lors de l'exécution du script.

Dans R, un commentaire est une ou plusieurs séquences de texte ignorée(s) lors de l'exécution du script qui débute par le signe #. Tout ce qui suit ce signe sera donc ignoré lors de l’exécution. Un commentaire peut soit être placé en haut ou à droite d’une ligne de commande.

# Ceci est une ligne de commentaire et ne sera pas exécutéx <- 2x <- 2 # Ceci est aussi un commentaire. 

Un commentaire devrait posséder les caractéristiques suivantes:

  1. Faciliter la lecture du code.
  2. Justifier certains choix qui ne seraient pas évidents (ex.: suppression de valeurs aberrantes).
  3. Donner un exemple pour permettre de mieux comprendre ce que fait le code.
  4. Être concis et ne pas décrire une évidence.
  5. Clarifier certaines sections complexes du code. C'est d'ailleurs une indication que votre code est peut-être trop complexe et mériterait d'être revu.

En appliquant ces recommandations générales, le code d'exploration des données du sondage du cours biostasitiques devient plus clair.

# Étape 1: Lire le fichier de données (voir capsule #4) Il s'agit du résultat# d'un sondage dans une classe d'étudiants de biostatistiquesdonnees <- read.table(file = "www/BIO1006_H2018_Echantillon.csv", header = TRUE, sep = ",", dec = ".")# Étape 2: Vérifier les types de données et leurs valeurs (voir capsule #2) On# remarque une valeur aberrante pour la taille en cm des individus!summary(donnees)
 couleur_yeux taille_cm nombre_choisi cours_par_session Length:60 Min. : 1.53 Min. : 0.0 Min. :3.000 Class :character 1st Qu.:160.75 1st Qu.: 7.0 1st Qu.:4.000 Mode :character Median :167.00 Median :17.0 Median :5.000 Mean :165.58 Mean :28.1 Mean :4.683 3rd Qu.:177.00 3rd Qu.:42.0 3rd Qu.:5.000 Max. :195.68 Max. :99.0 Max. :6.000 peur_des_biostats piece_monnaie genre Length:60 Length:60 Length:60 Class :character Class :character Class :character Mode :character Mode :character Mode :character 
range(donnees$taille_cm)
[1] 1.53 195.68
# Étape 3: Faire un histogramme pour voir la distribution de fréquence des ces# valeurs numériques (voir capsule #6)hist(donnees$taille_cm)

Les scripts dans R et RStudio (5)

# Étape 4: Identifier l'indice de la taille minimale SI elle est INFÉRIEURE à# 100 cm, puis supprimer cette valeur des futures analysesif (min(donnees$taille_cm) < 100) { # Retrouver l'indice de la valeur aberrante i <- which.min(donnees$taille_cm) # Créer un nouveau "data frame" sans les valeurs correspondantes donnees_new <- donnees[-i, ]}# Étape 5: Faire une comparaison de moyennes entre les valeurs de tailles selon# le facteur "genre"# Boxplot exploratoire des donnéesboxplot(donnees_new$taille_cm ~ donnees_new$genre)

Les scripts dans R et RStudio (6)

# analyse de varianceres.anova <- aov(donnees_new$taille_cm ~ donnees_new$genre)# Visualisation des résultats de l'anovasummary(res.anova)
 Df Sum Sq Mean Sq F value Pr(>F) donnees_new$genre 1 2192 2192 27.76 2.19e-06 ***Residuals 57 4502 79 ---Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
# Vérification visuelle des conditions d'application du testplot(res.anova)

Les scripts dans R et RStudio (7)Les scripts dans R et RStudio (8)Les scripts dans R et RStudio (9)Les scripts dans R et RStudio (10)

Téléchargement

Le matériel pédagogique utilisé dans cette capsule est disponible pour le téléchargement sous deux formats différents:

  1. Format PDF standard que vous pouvez consulter et commenter avec Adobe Reader par exemple.
  2. Format HTML dynamique qui se comporte comme une page web et doit être lu avec votre navigateur préféré (Chrome, Firefox, Edge, Safari, etc.).

Pour télécharger le fichier localement sur votre ordinateur, tablette ou téléphone portable, il suffit de cliquer sur le lien désiré avec le bouton droit de votre souris et choisir "sauvegarder sous...".

  • Télécharger la documentation sous format PDF
  • Télécharger la documentation sous format HTML
Les scripts dans R et RStudio (2024)

FAQs

How do I write an R script in RStudio? ›

To start writing a new R script in RStudio, click File – New File – R Script. Shortcut! To create a new script in R, you can also use the command–shift–N shortcut on Mac.

How do I run all scripts in RStudio? ›

To run the entire document press the Ctrl+Shift+Enter keys (or use the Source toolbar button).

How to save script in RStudio? ›

You can save your script at any time (use Save in the File menu or the save shortcut, Ctrl+S or Cmd+S depending on your OS). After you've saved your work, close RStudio.

What is the difference between R console and R script? ›

There are two main ways of interacting with R: using the console or by using script files (plain text files that contain your code). The console window (in RStudio, the bottom left panel) is the place where R is waiting for you to tell it what to do, and where it will show the results of a command.

What is a R script? ›

2.2 Introduction

An R script is simply a text file containing (almost) the same commands that you would enter on the command line of R. ( almost) refers to the fact that if you are using sink() to send the output to a file, you will have to enclose some commands in print() to get the same output as on the command line.

How to format an R script? ›

Rstudio can now format code to look neat. Select the lines of interest and then navigate to Code >> Reformat code or use the keyboard shortcut Ctrl + Shift + A . or just run the style directory command to style all the files in the directory.

How do you load a script in R? ›

The easiest way to do that is from within RStudio. Open a simple text file called an R script file by choosing the New File icon at the top-left, then choose R Script. RStudio can copy R commands from this text file and insert them into the R console as if you were manually entering commands yourself directly into R.

How do I automate a script in R? ›

On your Windows computer, search for "Task Scheduler" and open it. In the Task Scheduler, click "Create Basic Task..." to start the wizard. Choose when you want the task to start (daily, weekly, one time, etc.), and then set the specific time and frequency for your R script to run.

Where should I save my R scripts? ›

Notice that RStudio will save your script to your current working folder. An earlier topic in this learning infrastructure explained how to set your default working folder, so that will not be addressed here. Press the Save button and your script is saved to your working folder.

How do you source an R script? ›

To source a set of functions in R :
  1. Create a new R Script (. R file) in the same working directory as your . Rmd file or R script. Give the file a descriptive name that captures the types of functions in the file.
  2. Open that R Script file and add one or more functions to the file.
  3. Save your file.
Mar 30, 2020

What is the shortcut to run a script in RStudio? ›

Ctrl + Enter - Runs the current line and jumps to the next one, or runs the selected part without jumping further. Alt + Enter - Allows running code without moving the cursor to the next line if you want to run one line of code multiple times without selecting it. Ctrl + Alt + R - Runs the entire script.

Which is better, R or RStudio? ›

Understanding the difference between R and RStudio is crucial for maximizing the potential of both tools. While R provides a powerful programming language for statistical analysis, RStudio enhances the development experience with its user-friendly interface, project management tools, and integrated package management.

What language does R script use? ›

R software is open-source and free software. It is licensed by the GNU Project and available under the GNU General Public License. It is written primarily in C, Fortran, and R itself. Precompiled executables are provided for various operating systems.

How to run code in RStudio? ›

To execute the line of source code where the cursor currently resides you press the Ctrl+Enter key (or use the Run toolbar button): After executing the line of code, RStudio automatically advances the cursor to the next line. This enables you to single-step through a sequence of lines.

Where can you type R commands in RStudio? ›

Commands in R can be entered directly into the console at the bottom left of the screen. Entering 3 or more characters of a command into the console or a script will open the suggested command menu.

How to send a R script? ›

Sending an R project

are located within the same folder. Thus, to send the project to someone else, simply zip the folder and send. All files referenced in the scripts are included and no file pathways in the script are unique to your computer.

How do I automate an R script? ›

On your Windows computer, search for "Task Scheduler" and open it. In the Task Scheduler, click "Create Basic Task..." to start the wizard. Choose when you want the task to start (daily, weekly, one time, etc.), and then set the specific time and frequency for your R script to run.

What is the shortcut for R script? ›

Shortcuts to run R code

Alt + Enter - Allows running code without moving the cursor to the next line if you want to run one line of code multiple times without selecting it. Ctrl + Alt + R - Runs the entire script.

Top Articles
Latest Posts
Article information

Author: Horacio Brakus JD

Last Updated:

Views: 6046

Rating: 4 / 5 (51 voted)

Reviews: 82% of readers found this page helpful

Author information

Name: Horacio Brakus JD

Birthday: 1999-08-21

Address: Apt. 524 43384 Minnie Prairie, South Edda, MA 62804

Phone: +5931039998219

Job: Sales Strategist

Hobby: Sculling, Kitesurfing, Orienteering, Painting, Computer programming, Creative writing, Scuba diving

Introduction: My name is Horacio Brakus JD, I am a lively, splendid, jolly, vivacious, vast, cheerful, agreeable person who loves writing and wants to share my knowledge and understanding with you.