Fill in missing values in a vector by pulling successively from other vectors.
coalesce(..., .ptype = NULL, .size = NULL)
Input vectors. Supports dynamic dots.
Optional ptype to override output type
Optional size to override output size
# Use a single value to replace all missing values
x <- c(1:3, NA, NA)
coalesce(x, 0)
#> [1] 1 2 3 0 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 with dynamic dots
vecs <- list(
c(1, 2, NA, NA, 5),
c(NA, NA, 3, 4, 5)
)
coalesce(!!!vecs)
#> [1] 1 2 3 4 5