所以,我有这个载体c(“T”,“A”,“C”,“G”)用于基因组数据。我希望生成大小为3的所有可能组合,重复次数如下:
T T T
T T A
T T C
T T G
T A T
..
这会给我4 ^ 3 = 64种组合。大小为4的组合将给出4 ^ 4,对于大小5,组合应为4 ^ 5 = 1024行。
我搜索了SOF,并认为expand.grid()会这样做,但我无法找到如何使用它来获得所需的输出。有什么想法吗?
答案 0 :(得分:4)
x <- c("T", "A", "C", "G")
do.call(expand.grid, rep(list(x), 3))
答案 1 :(得分:2)
permutations
的 gtools
旨在实现此目的:
library(gtools)
data <- c("T", "A", "C", "G")
permutations(4, 3, data, repeats.allowed = TRUE)
## [,1] [,2] [,3]
## [1,] "A" "A" "A"
## [2,] "A" "A" "C"
## [3,] "A" "A" "G"
## [4,] "A" "A" "T"
## [5,] "A" "C" "A"
## [6,] "A" "C" "C"
## [7,] "A" "C" "G"
## [8,] "A" "C" "T"
## [9,] "A" "G" "A"
## [10,] "A" "G" "C"
## [11,] "A" "G" "G"
## [12,] "A" "G" "T"
## [13,] "A" "T" "A"
## [14,] "A" "T" "C"
## [15,] "A" "T" "G"
## [16,] "A" "T" "T"
## [17,] "C" "A" "A"
## [18,] "C" "A" "C"
## [19,] "C" "A" "G"
## [20,] "C" "A" "T"
…