Custom ifelse function that evaluates missing (NA) values. If the logical argument (x) compares to a value that is NA, it is set to FALSE

if_else2(x, a, b)

## Arguments

x A logical argument value if x is TRUE value if x is FALSE

## Value

a or b based on the evaluation of x

## Details

unlike the base ifelse() function, if_else2() is able to evaluate NA as either a or b. In base ifelse(), anything compared to NA will produce NA, which can break a function. When dealing with large datasets like the CCHS, there are many missing (NA) values. That means a special ifelse function like if_else2() is needed in order for other functions to not break

## Examples

age <- 12
status <- if_else2((age < 18), "child", "invalid age")
print(status)
#> [1] "child"

age <- NA
status <- if_else2((age < 18), "child", "invalid age")
print(status)
#> [1] "invalid age"