R For Loop
For Loops
A for
loop is used for iterating over a sequence:
This is less like the for
keyword in other programming languages, and works
more like an iterator
method as found in other object-oriented programming languages.
With the for
loop we can execute a set of statements, once for each item in
a vector,
array, list, etc..
Example
Print every item in a list:
fruits <- list("apple", "banana", "cherry")
for (x in fruits)
{
print(x)
}
Try it Yourself
»
Example
Print the number of dices:
dice <- c(1, 2, 3, 4, 5, 6)
for (x in dice) {
print(x)
}
Try it
Yourself »
The for
loop does not require an indexing variable to set beforehand, like
with while
loops.
Break
With the break
statement, we can stop the loop before it has looped through
all the items:
Example
Stop the loop at "cherry":
fruits <- list("apple", "banana", "cherry")
for (x in fruits)
{
if (x == "cherry") {
break
}
print(x)
}
Try it
Yourself »
The loop will stop at "cherry" because we have chosen to finish the loop by using the break
statement when
x
is equal to "cherry" (x ==
"cherry"
).
Next
With the next
statement, we can skip an iteration without terminating the
loop:
Example
Skip "banana":
fruits <- list("apple", "banana", "cherry")
for (x in fruits)
{
if (x == "banana") {
next
}
print(x)
}
Try it
Yourself »
When the loop passes "banana", it will skip it and continue to loop.
Yahtzee!
If .. Else Combined with a For Loop
To demonstrate a practical example, let us say we play a game of Yahtzee!
Example
Print "Yahtzee!" If the dice number is 6:
dice <- 1:6
for(x in dice) {
if (x == 6) {
print(paste("The dice number is", x, "Yahtzee!"))
} else
{
print(paste("The dice number is", x, "Not Yahtzee"))
}
}
Try it
Yourself »
If the loop reaches the values ranging from 1 to 5, it prints "No Yahtzee" and its number. When it reaches the value 6, it prints "Yahtzee!" and its number.