R中的特定排列

时间:2019-06-03 17:44:20

标签: r permutation

我正在尝试使用{0,1,2,3}创建字母combinat::permn的排列。

问题是我希望每个排列都转换为'%s-%s-%s' .. etc的形式并存储在列表中。例如,

> library(combinat)
> permn(numbers[1:4])
[[1]]
[1] "0" "1" "2" "3"
[[2]]
[1] "0" "1" "3" "2"
 .
 .
 . and so on

但是我想将所有排列的输出转换成我的特定格式的字符串序列列表,例如'0-1-2-3', '0-1-3-2等。

1 个答案:

答案 0 :(得分:2)

使用lapplypaste应用于每个向量,并使用所需的定界符(在本例中为“-”)将其折叠。

lapply(permn(0:3), paste, collapse = "-")

如果只希望将输出作为矢量而不是列表,则可以使用sapply代替lapply