Если вы хотите получить все комбинации столбцов (выберите любое количество столбцов, т. Е. От 1
до ncol(A)
), которые соответствуют вашей цели, вы можете использовать следующее решение:
r <- Filter(nchar,unlist(sapply(seq(ncol(A)), function(k) combn(seq(ncol(A)),k, function(x) ifelse(all(as.numeric(rowSums(as.matrix(A[,x]))>=1)==B), toString(x), NA)))))
тогда вы получите
> r
[1] "2, 6" "1, 2, 6" "2, 3, 6" "2, 4, 6" "2, 5, 6" "1, 2, 3, 6" "1, 2, 4, 6" "1, 2, 5, 6" "2, 3, 4, 6"
[10] "2, 3, 5, 6" "2, 4, 5, 6" "1, 2, 3, 4, 6" "1, 2, 3, 5, 6" "1, 2, 4, 5, 6" "2, 3, 4, 5, 6" "1, 2, 3, 4, 5, 6"
Надеюсь, что это может помочь!