# Use switch() instead of ifelse() to return a NULL

**http://r-addict.com**, and kindly contributed to R-bloggers]. (You can report issue about the content on this page here)

Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.

Have you ever tried to return a `NULL`

with the `ifelse()`

function? This function is a simple vectorized workflow for conditional statements. However, one can’t just return a `NULL`

value as a result of this evaluation. Check a tricky workaround solution in this post.

Imagine a simple `R`

logical statement like

and depending on that logical value you would like to create a new variable called `res`

. You can follow a regular `if`

conditional statement

or use simplified interface with `ifelse()`

function

However it looks like one is not able to return the `NULL`

as a result of this operation.

A solution is to jump to the other conditional function called `switch()`

, which for the first parameter takes number (`n`

) and returns the value passed as the `n-th`

parameter. If one treats logical values as `TRUE is 1`

and `FALSE is 0`

then primary `ifelse()`

statement can be rebuild to `switch()`

call like

What do you think about such workaround? Do you use other solutions for such a situation?

**leave a comment**for the author, please follow the link and comment on their blog:

**http://r-addict.com**.

R-bloggers.com offers

**daily e-mail updates**about R news and tutorials about learning R and many other topics. Click here if you're looking to post or find an R/data-science job.

Want to share your content on R-bloggers? click here if you have a blog, or here if you don't.