Description Usage Arguments Value Examples
This function allows you to vectorise mutiple if
and else if
statements. It is an R equivalent of the SQL CASE WHEN
statement.
1 |
... |
A sequence of two-sided formulas. The left hand side (LHS) determines which values match this case. The right hand side (RHS) provides the replacement value. The LHS must evaluate to a logical vector. Each logical vector can either have length 1 or a common length. All RHSs must evaluate to the same type of vector. |
A vector as long as the longest LHS, with the type (and attributes) of the first RHS. Inconsistent lengths of types will generate an error.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | x <- 1:50
case_when(
x %% 35 == 0 ~ "fizz buzz",
x %% 5 == 0 ~ "fizz",
x %% 7 == 0 ~ "buzz",
TRUE ~ as.character(x)
)
# Like an if statement, the arguments are evaluated in order, so you must
# proceed from the most specific to the most general. This won't work:
case_when(
TRUE ~ as.character(x),
x %% 5 == 0 ~ "fizz",
x %% 7 == 0 ~ "buzz",
x %% 35 == 0 ~ "fizz buzz"
)
|
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.