Я использую R
в RStudio
, и у меня есть следующее list
:
list1 <- c(1,2,3,4,5,6,8,9,10,11,12,13,14,15,16,17,18,19,20)
Я хочу вывести все комбинации из 3 чисел (без замены) из этого list
, которые будут sum
, скажем, 50.
Я думаю об использовании RcppAlgos
library
в R
. У меня есть следующие коды:
list1 <- c(1,2,3,4,5,6,8,9,10,11,12,13,14,15,16,17,18,19,20)
uni <- unique(list1)
myRep <- rle(list1)$lengths
ans <- 50
library(RcppAlgos)
lapply(seq_along(uni), function(x) {
comboGeneral(uni, x, freqs = myRep,
constraintFun = "sum",
comparisonFun = "==",
limitConstraints = ans)
})
Если я выполню этот код, он выведет ВСЕ комбинации, которые в сумме составят 50.
Как я могу ограничить вывод только теми комбинациями с 3 числами?
Я также хочу, чтобы выходные данные показывали ВСЕ результаты вместо того, чтобы давать мне сообщение «Максимальный достигнут».
Примечание: я открыт для использования другого пакета, если таковой имеется.