Flux de contrôle et boucles en R

Guide pratique des conditionnelles et des constructions de boucles en R

Apprenez à mettre en œuvre le flux de contrôle dans R à l’aide de conditionnelles et de boucles. Ce tutoriel couvre les instructions if-else, les boucles for, les boucles while et les boucles repeat avec des exemples pratiques pour vous aider à construire des scripts R dynamiques.

Programmation
Auteur·rice
Affiliation
Date de publication

10 février 2024

Modifié

9 mai 2025

Mots clés

Flux de contrôle en R, R boucles, if-else dans R, Boucle for en R, boucle while en R

Introduction

Le flux de contrôle est un concept fondamental de la programmation qui vous permet de diriger l’exécution de votre code en fonction de conditions. En R, la maîtrise des conditionnelles et des boucles est essentielle pour écrire des scripts dynamiques et efficaces. Dans ce tutoriel, vous apprendrez à utiliser les instructions if-else pour la prise de décision et diverses boucles (for, while et repeat) pour effectuer des tâches répétitives.



Déclarations conditionnelles

Les instructions conditionnelles permettent à votre code d’exécuter différents blocs de code selon qu’une condition est VRAIE ou FAUSSE.

Utiliser if et if-else

# Exemple utilisant if et if-else
x <- 10

if (x > 5) {
  print("x is greater than 5")
} else {
  print("x is not greater than 5")
}
[1] "x is greater than 5"

Utiliser if, else if et else

# Déterminer la catégorie en fonction de la valeur de x
x <- 0

if (x > 0) {
  print("x is positive")
} else if (x < 0) {
  print("x is negative")
} else {
  print("x is zero")
}
[1] "x is zero"

Constructions de boucles

Les boucles vous permettent d’exécuter un bloc de code de manière répétée. R prend en charge plusieurs types de boucles, notamment les boucles for, les boucles while et les boucles de répétition.

Boucles For

Les boucles For itèrent sur une séquence d’éléments. Elles sont utiles pour traiter chaque élément d’un vecteur ou d’une liste.

# Imprimer chaque élément d'un vecteur
numbers <- c(1, 2, 3, 4, 5)
for (num in numbers) {
  print(num)
}
[1] 1
[1] 2
[1] 3
[1] 4
[1] 5

Boucles While

Les boucles While poursuivent l’exécution tant qu’une condition spécifiée reste VRAIE.

Imprimer les nombres de 1 à 5 à l’aide d’une boucle while:

counter <- 1
while (counter <= 5) {
  print(counter)
  counter <- counter + 1
}
[1] 1
[1] 2
[1] 3
[1] 4
[1] 5

Répéter les boucles

Les boucles Repeat exécutent un bloc de code indéfiniment jusqu’à ce qu’une condition d’interruption soit remplie. Elles sont utiles lorsque le nombre d’itérations n’est pas connu à l’avance.

Utiliser une boucle de répétition pour imprimer des nombres jusqu’à ce qu’une condition soit remplie:

counter <- 1
repeat {
  print(counter)
  counter <- counter + 1
  if (counter > 5) {
    break
  }
}
[1] 1
[1] 2
[1] 3
[1] 4
[1] 5

Bonnes pratiques

  • Rester simple: Écrire un code clair et bien commenté. Utilisez des noms de variables descriptifs et évitez les conditionnelles ou les boucles imbriquées trop complexes.

  • Éviter les boucles infinies:
    Veillez toujours à ce que votre boucle ait une condition de sortie bien définie pour éviter les boucles infinies.

  • Vectorisation:
    Rappelez-vous que R est optimisé pour les opérations vectorielles. Dans de nombreux cas, vous pouvez remplacer les boucles par des fonctions vectorisées pour de meilleures performances.

Conclusion

La maîtrise du flux de contrôle et des boucles dans R est essentielle pour développer des scripts dynamiques et efficaces. En comprenant et en utilisant efficacement les conditionnelles et les boucles, vous pouvez automatiser les tâches répétitives et prendre des décisions dans votre code. Expérimentez ces exemples et appliquez les meilleures pratiques pour améliorer la clarté et la performance de vos programmes R.

Plus d’informations

Bon codage et bonne exploration du flux de contrôle et des boucles dans R!

Articles connexes

Explorer d’autres articles

Note

Voici d’autres articles de la même catégorie pour vous aider à approfondir le sujet.

placeholder

placeholder
Aucun article correspondant
Retour au sommet

Réutilisation

Citation

BibTeX
@online{kassambara2024,
  author = {Kassambara, Alboukadel},
  title = {Flux de contrôle et boucles en R},
  date = {2024-02-10},
  url = {https://www.datanovia.com/fr/learn/programming/r/basics/control-flow-and-loops.html},
  langid = {fr}
}
Veuillez citer ce travail comme suit :
Kassambara, Alboukadel. 2024. “Flux de contrôle et boucles en R.” February 10, 2024. https://www.datanovia.com/fr/learn/programming/r/basics/control-flow-and-loops.html.