Suppose I have an R vector of unique elements such as x <- c(1,2,3,4,5).
Is there a function to give me a list of all possible partitions of this vector x? I guess each partition would be a list of vectors, where each element in x belongs to one of the vectors. I want all possible partitions into any number of sets of any size.
(I think the number of such partitions is something like 2^n * n!, where n is the number of unique elements. I will probably not be using this function on vectors with more than 4 unique elements.)
Here’s a solution that will get you a complete list of partitions, each one of which is represented as a list of vectors. Since a list of lists is pretty ugly when printed to the screen, I’ve also shown you how to get a more nicely printed object.
See also
setparts()in the same package for a more compact way to represent the same set of partitions.