Chapter 8 Multiple condition decisions
While simple if and if else operations tests single conditions, we can make more complex operations, which tests multiple conditions.
With the ifelse() function, we can test a test a vector of conditions and/or apply functions only under certain conditions. See the examples below:
a <- 1:10
ifelse(test = a > 5, yes = "yes", no = "no")## [1] "no" "no" "no" "no"
## [5] "no" "yes" "yes" "yes"
## [9] "yes" "yes"
a <- (-4):5
sqrt(ifelse(test = a >= 0, yes = a, no = NA))## [1] NA NA
## [3] NA NA
## [5] 0.000000 1.000000
## [7] 1.414214 1.732051
## [9] 2.000000 2.236068
While the if() and if() else statements leave you with exactly two options, nested if() else statement allows you consider more alternatives.
if (test_expression1) {
statement1
} else if (test_expression2) {
statement2
} else if (test_expression3) {
statement3
} else {
statement4
}