Я думаю, вам может понадобиться sep = sep
в пределах do.call
, поскольку lhs sep
для paste
, а rhs sep
является входным аргументом функции fun
, то есть
fun <- function(x, sep=" "){
stopifnot(is.list(x))
k <- length(x)
n <- lengths(x)
stopifnot(length(unique(n))==1)
do.call(paste, c(x, list(sep=sep)))
}
Пример
> fun(as.list(seq(3)),"-")
[1] "1-2-3"