有可能将载体片段化为所有不同的可能片段组合吗

  • 本文关键字:片段 组合 有可能 r
  • 更新时间 :
  • 英文 :


例如,我有一个向量c(1,2,3,4,5)

有不同的片段组合:

组合0:1 2 3 4 5

组合1:12345

组合2:1234 5

组合3:123 45

组合4:12 345

组合5:1 2345

组合6:12 34 5

组合7:12 3 45

组合8:1 23 45

组合9:15 23 4

组合10:14 23 5

…等等(有很多组合(。

虽然顺序无关紧要:14 23 5相当于5 41 32(因此,只需要其中一个组合(。

在R中有没有一种方法可以将载体片段化为所有不同的可能片段组合?

我希望输出是一个(显然非常长(嵌套列表,包含所有不同的可能片段组合。

在组合9和10的情况下:

list(
list(c(1,5), c(2,3), 4),
list(c(1,4), c(2,3), 5)
)
[[1]]
[[1]][[1]]
[1] 1 5
[[1]][[2]]
[1] 2 3
[[1]][[3]]
[1] 4

[[2]]
[[2]][[1]]
[1] 1 4
[[2]][[2]]
[1] 2 3
[[2]][[3]]
[1] 5

我认为akrun的答案是正确的。只是一个小错误:

library(partitions)
v1 <- 1:5
lapply(listParts(length(v1)), unclass)

最新更新