【发布时间】:2016-08-10 17:17:04
【问题描述】:
我正在尝试通过从 3 个不同列表中获取 1 个值来生成排列
l <- list(A=c(1:13), B=c(1:5), C=c(1:3))
期望的结果 => 所有排列的矩阵,其中第一个值可以是 1-13,第二个值可以是 1-5,第三个值可以是 1-3
我尝试使用组合包中的 permn,但它似乎只是重新排列了 3 个列表。
> permn(l)
[[1]]
[[1]]$A
[1] 1 2 3 4 5 6 7 8 9 10 11 12 13
[[1]]$B
[1] 1 2 3 4 5
[[1]]$C
[1] 1 2 3
[[2]]
[[2]]$A
[1] 1 2 3 4 5 6 7 8 9 10 11 12 13
[[2]]$C
[1] 1 2 3
[[2]]$B
[1] 1 2 3 4 5
....
预期输出
[,1] [,2] [,3]
[1,] 1 1 3
[2,] 1 2 1
[3,] 1 1 2
[4,] 1 1 3
and so on...
【问题讨论】:
-
你的预期输出是什么
-
以上更新。理想情况下只是一个具有 3 列和 (13 x 5 x 3) 195 种可能排列的矩阵
-
@akrun 我不知道理查德是否对你的回答投了反对票,但这与这是一个受骗的受骗的受骗的受骗的受骗的事实无关。为什么要重新打开它?
-
@akrun 我不明白。你说这不是骗子?投票问题似乎是个小插曲。一般来说,虽然投票是个人的选择,但不可避免地基于一些主观因素;骗子是值得一起解决的问题。
-
@akrun 好的,但这并不能证明重新打开是合理的。如果您与某人有问题,在 cmets 中指责他们并滥用 - 是的,这个词适合这里 - 关闭/重新开放并不是真正解决问题的正确方法。
标签: r permutation