The documentation for the base function c()
shows its default arguments as
c(..., recursive = FALSE)
Now, if we define
lst <- list(x = 1:5, y = 6:10)
and then combine the list with
c(lst, recursive = TRUE)
# x1 x2 x3 x4 x5 y1 y2 y3 y4 y5
# 1 2 3 4 5 6 7 8 9 10
the list is collapsed, and the names are kept.
But we can also use another, undocumented argument, use.names
, to remove the names.
c(lst, recursive = TRUE, use.names = FALSE)
# [1] 1 2 3 4 5 6 7 8 9 10
Why isn't use.names
documented as one of the arguments of c()
?
I think that it is due to the recursive=TRUE
which I believe must use the same code as unlist
. The use.names
parameter is described in ?unlist
.
c
is an S4 Generic function, which means that a different function is called depending on its arguments.
Not all of those functions take the argument use.names
, so it does not make sense for it to be documented in the documentation for c()
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With