R Functions : définition et utilisation

R est un langage de programmation utilisé dans de nombreux domaines de l’analyse de données et des statistiques. L’un des principaux concepts de la programmation en R concerne les fonctions. Ces dernières contribuent à gérer le code de manière claire et modulaire.

Pourquoi utilise-t-on des fonctions en R ?

Les fonctions R sont utilisées pour structurer le code, l’organiser et le réutiliser. Elles sont particulièrement utiles lorsque vous exécutez des analyses complexes ou des traitements de données volumineux, ou lorsque vous souhaitez créer des analyses sur mesure. Rédiger des fonctions en R présente de nombreux avantages :

  • Abstraction : les fonctions en R offrent la possibilité d’encapsuler des processus ou des calculs complexes dans une interface unique et compréhensible. Le code est ainsi plus facilement entretenu et lu.
  • Réutilisation : les fonctions R permettent d’exécuter de manière répétée un bloc de code spécifique sans devoir le réécrire à chaque fois. Cela permet de gagner du temps et réduit le risque d’erreur.
  • Modularité : les fonctions en R permettent de fractionner un gros projet en petites parties de taille raisonnable.

Syntaxe des fonctions en R

La syntaxe des fonctions en R est cohérente et suit un modèle clair. Avec R, une fonction se compose des principaux composants suivants :

  • Nom de la fonction : le nom de la fonction indique normalement quelle tâche est exécutée.
  • Arguments : les arguments sont les valeurs ou variables qui traduisent la fonction et qui sont traités par la fonction. Une fonction peut accepter autant d’arguments que souhaité (ou aucun). Par ailleurs, dans les fonctions en R, des valeurs par défaut peuvent être utilisées pour les arguments.
  • Corps de la fonction : le corps de la fonction contient le code exécuté dans la fonction et est indiqué entre accolades. Ce code peut accéder aux arguments et les traiter.
  • Valeur de retour : la majorité des fonctions en R retourne à l’aide de return() une valeur qui constitue le résultat du calcul. Cette valeur de retour permet d’utiliser le résultat de la fonction dans d’autres parties du code.

Voici un exemple simple d’une fonction R qui additionne deux nombres :

my_add <- function(a, b) {
    result <- a + b
    return(result)
}
R

Dans cet exemple, my_add est le nom de la fonction, a et b sont les arguments, le corps de la fonction exécute l’addition et return(result) retourne le résultat. Il convient également de noter que la définition de la fonction R est déclenchée par le mot-clé function.

Une fonction peut également contenir des valeurs prédéfinies pour les arguments, qui sont utilisées si aucun argument n’est transmis. La fonction R mentionnée ci-dessus serait la suivante avec des valeurs par défaut :

my_add <- function(a = 1, b = 2) {
    result <- a + b
    return(result)
}
R

Si la fonction est alors appelée sans indiquer d’arguments, elle retourne la valeur 3.

Conseil

Si vous souhaitez mettre en ligne votre projet R, vous pouvez louer votre propre hébergement Web auprès de IONOS afin d’avoir suffisamment de place pour les projets Web de tous types.

Fonctions R préinstallées

R possède une vaste collection de fonctions déjà installées, également appelées commandes R, qui peuvent être utilisées à diverses fins. Ces fonctions sont disponibles et utilisables en R sans définition préalable. Les fonctions, comme l’addition, peuvent aussi être partiellement utilisées avec les opérateurs en R, soit dans ce cas, l’opérateur +.

Si vous commencez tout juste à apprendre les bases de la programmation, découvrez ici quelques-unes des fonctions prédéfinies d’autres langages de programmation qui vous seront certainement familières :

  • mean() : calcule la moyenne des nombres
  • plot() : une fonction de plotting en R pour la création de diagrammes et de graphiques
  • read.csv() : répertorie les données dans un fichier CSV
  • toupper() : transforme tous les caractères d’une chaîne R en majuscules
  • sum() : calcule la somme des nombres
  • print() : retourne la valeur sur la console

Voici un exemple d’utilisation de la fonction préinstallée mean() en R. À la fin du code, la moyenne de tous les nombres du vecteur R est enregistrée dans la variable result.

numbers <- c(2, 4, 6, 8, 10)
result <- mean(numbers)
R

Écrire vos propres fonctions R

La création de vos propres fonctions en R est une part fondamentale de la programmation en R. Vous pouvez créer des fonctions spécifiquement conçues selon vos exigences. Il vous suffit de respecter la syntaxe R et de réfléchir aux arguments dont vous avez besoin dans votre fonction.

Voici un exemple simple d’une fonction R personnalisée qui retourne la valeur absolue d’un nombre.

my_abs <- function(x) {
    if (x < 0) {
        return(-x)
    } else {
        return(x)
    }
}
R

Dans cet exemple, la fonction accepte un argument x. Dans le corps de la fonction, la déclaration if en R vérifie si le nombre est négatif (c’est-à-dire inférieur à zéro). Si c’est le cas, la fonction retourne la valeur négative de x en multipliant par -1, ce qui donne la valeur absolue de x. Si x est déjà positif ou nul, la fonction retourne simplement la valeur de x sans modification.

Utilisation des fonctions en R

Une fois que vous avez créé une fonction, vous pouvez l’utiliser dans votre code R en appelant le nom de la fonction et en indiquant les arguments requis. L’utilisation de vos propres fonctions est similaire à celle des fonctions R prédéfinies.

Voici un exemple d’utilisation de la fonction my_abs créée ci-dessus :

result <- my_abs(-5)
print(result)
R

Si vous exécutez cet exemple de code, vous constatez que le chiffre 5 apparaît à l’écran. Le calcul de la valeur absolue à l’aide de la fonction retourne donc le bon résultat.