Я использовал предложения @ chinsoon12 с дополнительными paste
, чтобы получить требуемый результат:
paste(lapply(unlist(lapply(rev(seq_along(a)), function(m) combn(a, m, simplify=FALSE)), recursive=FALSE), paste, collapse=" "), collapse=",")
Возвращает: "abcd, abc, abd, acd, bcd, ab, ac, ad, bc,шд, кд, а, б, в, г "