Lightweight dplyr::if_else
with the virtues and vices that come from such an approach.
Attempts to replicate dplyr::if_else
but written in base R for faster compile time.
hutils::if_else
should be faster than dplyr::if_else
… when it works,
but will not work on lists or on factors.
Additional attributes may be dropped.
if_else(condition, true, false, missing = NULL)
condition | Logical vector. |
---|---|
true, false | Where condition is |
missing | If condition is |
Original code but obviously heavily inspired by https://CRAN.R-project.org/package=dplyr.
Where condition
is TRUE
, the corresponding value in true
;
where condition
is FALSE
, the corresponding value in false
.
Where condition
is NA
, then the corresponding value in na
--
unless na
is NULL
(the default) in which case the value will be NA
(with the same
type as true
.)
If the result is expected to be a factor then the conditions for type safety are strict and may be made stricter in future.