as_vector()
collapses a list of vectors into one vector. It
checks that the type of each vector is consistent with
.type
. If the list can not be simplified, it throws an error.
simplify
will simplify a vector if possible; simplify_all
will apply simplify
to every element of a list.
as_vector(.x, .type = NULL) simplify(.x, .type = NULL) simplify_all(.x, .type = NULL)
.x | A list of vectors |
---|---|
.type | A vector mold or a string describing the type of the
input vectors. The latter can be any of the types returned by
|
.type
can be a vector mold specifying both the type and the
length of the vectors to be concatenated, such as numeric(1)
or integer(4)
. Alternatively, it can be a string describing
the type, one of: "logical", "integer", "double", "complex",
"character" or "raw".
#> [1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m" "n" "o" "p" "q" "r" "s" #> [20] "t" "u" "v" "w" "x" "y" "z"#> [1] "a" "b" "c" "d" "e" "f" "g" "h" "i" "j" "k" "l" "m" "n" "o" "p" "q" "r" "s" #> [20] "t" "u" "v" "w" "x" "y" "z"# Vector molds are more flexible because they also specify the # length of the concatenated vectors: list(1:2, 3:4, 5:6) %>% as_vector(integer(2))#> [1] 1 2 3 4 5 6# Note that unlike vapply(), as_vector() never adds dimension # attributes. So when you specify a vector mold of size > 1, you # always get a vector and not a matrix