Boucle For en R avec exemples de liste et de matrice
Une boucle for est très utile lorsque nous devons parcourir une liste d’éléments ou une plage de nombres. La boucle peut être utilisée pour parcourir une liste, un bloc de données, un vecteur, une matrice ou tout autre objet. Les accolades et les crochets sont obligatoires.
Dans ce tutoriel, nous apprendrons,
Syntaxe et exemples de boucles For
For (i in vector) { Exp }
Ici,
R bouclera sur toutes les variables du vecteur et effectuera le calcul écrit dans l'exp.

Voyons quelques exemples.
Boucle For dans R Exemple 1: Nous parcourons tous les éléments d'un vecteur et imprimons la valeur actuelle.
# Create fruit vector fruit <- c('Apple', 'Orange', 'Passion fruit', 'Banana') # Create the for statement for ( i in fruit){ print(i) }
Sortie :
## [1] "Apple" ## [1] "Orange" ## [1] "Passion fruit" ## [1] "Banana"
Boucle For dans R Exemple 2: crée une fonction non linéaire en utilisant le polynôme de x entre 1 et 4 et on la stocke dans une liste
# Create an empty list list <- c() # Create a for statement to populate the list for (i in seq(1, 4, by=1)) { list[[i]] <- i*i } print(list)
Sortie :
## [1] 1 4 9 16
La boucle for est très utile pour les tâches d'apprentissage automatique. Après avoir formé un modèle, nous devons le régulariser pour éviter un ajustement excessif. La régularisation est une tâche très fastidieuse car nous devons trouver la valeur qui minimise la fonction de perte. Pour nous aider à détecter ces valeurs, nous pouvons utiliser une boucle for pour parcourir une plage de valeurs et définir le meilleur candidat.
Boucle For sur une liste
Faire une boucle sur une liste est tout aussi simple et pratique que parcourir un vecteur. Voyons un exemple
# Create a list with three vectors fruit <- list(Basket = c('Apple', 'Orange', 'Passion fruit', 'Banana'), Money = c(10, 12, 15), purchase = FALSE) for (p in fruit) { print(p) }
Sortie :
## [1] "Apple" "Orange" "Passion fruit" "Banana" ## [1] 10 12 15 ## [1] FALSE
Boucle For sur une matrice
Une matrice a 2 dimensions, des lignes et des colonnes. Pour parcourir une matrice, il faut définir deux boucles for, à savoir une pour les lignes et une autre pour la colonne.
# Create a matrix mat <- matrix(data = seq(10, 20, by=1), nrow = 6, ncol =2) # Create the loop with r and c to iterate over the matrix for (r in 1:nrow(mat)) for (c in 1:ncol(mat)) print(paste("Row", r, "and column",c, "have values of", mat[r,c]))
Sortie :
## [1] "Row 1 and column 1 have values of 10" ## [1] "Row 1 and column 2 have values of 16" ## [1] "Row 2 and column 1 have values of 11" ## [1] "Row 2 and column 2 have values of 17" ## [1] "Row 3 and column 1 have values of 12" ## [1] "Row 3 and column 2 have values of 18" ## [1] "Row 4 and column 1 have values of 13" ## [1] "Row 4 and column 2 have values of 19" ## [1] "Row 5 and column 1 have values of 14" ## [1] "Row 5 and column 2 have values of 20" ## [1] "Row 6 and column 1 have values of 15" ## [1] "Row 6 and column 2 have values of 10"