Подтвердить что ты не робот

Сгенерировать все возможные перестановки (или n-кортежи)

Я хотел бы создать data.frame из всех возможных перестановок из 10 переменных, которые могут быть 1 или 2

2*2*2*2*2*2*2*2*2*2 = 1024 # possible

1,1,1,1,1,1,1,1,1,1
1,2,1,1,1,1,1,1,1,1
1,2,2,1,1,1,1,1,1,1
1,2,2,2,1,1,1,1,1,1
...

Есть ли "быстрый" способ сделать это в R?

4b9b3361

Ответ 1

как насчет этого:

tmp = expand.grid(1:2,1:2,1:2,1:2,1:2,1:2,1:2,1:2,1:2,1:2)

или это (спасибо Тайлеру):

x <- list(1:2)
tmp = expand.grid(rep(x, 10))

Ответ 2

Некоторые люди задавали вопрос относительно писем, например, здесь. Обычно предоставляется решение expand.grid, но я считаю, что это намного проще:

sapply(LETTERS[1:3], function(x){paste0(x, LETTERS[1:3])}) %>% c()
# [1] "AA" "AB" "AC" "BA" "BB" "BC" "CA" "CB" "CC"