R While Loop
Loops
Loops can execute a block of code as long as a specified condition is reached.
Loops are handy because they save time, reduce errors, and they make code more readable.
R has two loop commands:
while
loopsfor
loops
R While Loops
With the while
loop we can execute a set of statements as long as a condition is TRUE:
Example
Print i
as long as i
is less than 6:
i <- 1
while (i < 6) {
print(i)
i <- i + 1
}
Try it Yourself »
In the example above, the loop will continue to produce numbers ranging from
1 to 5. The loop will stop at 6 because 6 < 6
is FALSE.
The while
loop requires relevant variables to be ready, in this example we
need to define an indexing variable, i
, which we set to 1.
Note: remember to increment i, or else the loop will continue forever.
Break
With the break
statement, we can stop the loop even if the while condition is TRUE:
Example
Exit the loop if i
is equal to 4.
i <- 1
while (i < 6) {
print(i)
i <- i + 1
if
(i == 4) {
break
}
}
Try it Yourself »
The loop will stop at 3 because we have chosen to finish the loop by using the break
statement when i
is equal to 4 (i == 4
).
Next
With the next
statement, we can skip an iteration without terminating the loop:
Example
Skip the value of 3:
i <- 0
while (i < 6) {
i <- i + 1
if (i == 3) {
next
}
print(i)
}
Try it Yourself »
When the loop passes the value 3, it will skip it and continue to loop.
Yahtzee!
If .. Else Combined with a While 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
while (dice <= 6) {
if (dice < 6) {
print("No
Yahtzee")
} else {
print("Yahtzee!")
}
dice <- dice
+ 1
}
Try it Yourself »
If the loop passes the values ranging from 1 to 5, it prints "No Yahtzee". Whenever it passes the value 6, it prints "Yahtzee!".