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.

Boucle For dans R
Boucle For dans R

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" 

Rรฉsumez cet article avec :