Given a set of vectors, coalesce()
finds the first non-missing value
at each position. This is inspired by the SQL COALESCE
function
which does the same thing for NULL
s.
coalesce(...)
... | Vectors. All inputs should either be length 1, or the same length as the first argument. These dots support tidy dots features. |
---|
A vector the same length as the first ...
argument with
missing values replaced by the first non-missing value.
na_if()
to replace specified values with a NA
.
tidyr::replace_na()
to replace NA
with a value
#> [1] 0 3 4 0 5 1 2 0# Or match together a complete vector from missing pieces y <- c(1, 2, NA, NA, 5) z <- c(NA, NA, 3, 4, 5) coalesce(y, z)#> [1] 1 2 3 4 5# Supply lists by splicing them into dots: vecs <- list( c(1, 2, NA, NA, 5), c(NA, NA, 3, 4, 5) ) coalesce(!!!vecs)#> [1] 1 2 3 4 5