У меня есть список простых чисел с множителем I, используя outer()
и upper.tri()
, чтобы получить уникальный набор чисел.R - Список комбинаций с external() и expand.grid()
primes <- c(2, 3, 5, 7, 11, 13, 17, 19, 23, 29)
m <- outer(primes, primes, "*")
unq <- m[which(upper.tri(m))]
> unq
6 10 15 14 21 35 22 33 55 77 26 39 65 91 143 34 51 85 119 187 221 38 57 95 133 209 247 323 46 69 115 161 253 299 391 437 58 87 145 203 319 377 493 551 667
Каждый из исходных простых чисел представляет собой набор из двух чисел:
a2 <- c(1,1)
a3 <- c(1,2)
a5 <- c(2,2)
a7 <- c(1,3)
a11 <- c(1,4)
a13 <- c(2,3)
a17 <- c(2,4)
a19 <- c(3,3)
a23 <- c(3,4)
a29 <- c(4,4)
Сочетание двух наборов из двух чисел производит 4 номера
expand.grid(a2,a3)
1 1
1 1
1 2
1 2
Так что я бы как сделать, это иметь список списков с каждым простым числом, имеющим все 4 возможные комбинации. я пытался что-то вроде этого, но я пропускаю некоторые основы здесь:
outer(a ,a , "expand.grid")
Так что результат будет выглядеть примерно так это в первый штрихом:
6 c(11, 11, 12, 12)
Я этого не делаю. Какова связь между словами 'a7' и' c (1,3) '? Почему вы генерируете комбинации? Почему существует только 4 возможных сочетания? – thelatemail