Boucle For avec plage dans R (y compris des exemples)



Vous pouvez utiliser la syntaxe de base suivante pour écrire une boucle for avec une plage dans R :

for(i in 1:10) {
  do something
}

Les exemples suivants montrent comment utiliser cette syntaxe dans la pratique.

Exemple 1 : imprimer les valeurs dans la plage

Le code suivant montre comment utiliser une boucle for pour imprimer chaque valeur dans une certaine plage :

#print every value in range of 1 to 10
for(i in 1:10) {
  print(i)
}

[1] 1
[1] 2
[1] 3
[1] 4
[1] 5
[1] 6
[1] 7
[1] 8
[1] 9
[1] 10

Exemple 2 : effectuer une opération sur les valeurs dans la plage

Le code suivant montre comment utiliser une boucle for pour effectuer une opération spécifique sur chaque valeur dans une certaine plage :

#define vector
x <- c(4, 7, 9, 12, 14, 16, 19)

#print square root of every value in vector
for(i in 1:length(x)) {
 print(paste('The square root of the value in position', i, 'is', sqrt(x[i])))
}

[1] "The square root of the value in position 1 is 2"
[1] "The square root of the value in position 2 is 2.64575131106459"
[1] "The square root of the value in position 3 is 3"
[1] "The square root of the value in position 4 is 3.46410161513775"
[1] "The square root of the value in position 5 is 3.74165738677394"
[1] "The square root of the value in position 6 is 4"
[1] "The square root of the value in position 7 is 4.35889894354067"

Exemple 3 : effectuer une opération sur les valeurs dans le bloc de données

Le code suivant montre comment utiliser une boucle for pour effectuer une opération spécifique sur chaque valeur d’une colonne spécifique d’un bloc de données dans r :

#define data frame
df <- data.frame(a=c(3, 4, 4, 5, 8),
                 b=c(8, 8, 7, 8, 12),
                 c=c(11, 15, 19, 15, 11))

#view data frame
df

  a  b  c
1 3  8 11
2 4  8 15
3 4  7 19
4 5  8 15
5 8 12 11

#multiply every value in column 'a' by 2
for(i in 1:length(df$a)) {
  df$a[i] = df$a[i]*2
}

#view updated data frame
df

   a  b  c
1  6  8 11
2  8  8 15
3  8  7 19
4 10  8 15
5 16 12 11

Ressources additionnelles

Comment créer une boucle For imbriquée dans R
Comment écrire une instruction If Else imbriquée dans R
Comment parcourir les noms de colonnes dans R

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *