输入的内容是:
c("a", "b", "c")
[1] "a" "b" "c"
我想要一个返回的函数:
[1] "a;b" "a;c" "b;c"
我需要这个功能完全不用它的输入。我已经尝试过purrr::map()
和purrr::reduce()
的一些东西,但我还没有设法得到任何有用的东西。
我们可以使用来自基数R的combn
和FUN
参数作为paste
combn(x, 2, FUN = paste, collapse = ";")
#[1] "a;b" "a;c" "b;c"
数据
x <- c("a", "b", "c")
不是确切的结果,但可能有用:
test<-c("a", "b", "c")
lapply(test,function(x) paste0(x,";",setdiff(test,x)))
结果:
[[1]]
[1] "a;b" "a;c"
[[2]]
[1] "b;a" "b;c"
[[3]]
[1] "c;a" "c;b"