How to iterate over cell array, creating only unique combinations of cells
8 views (last 30 days)
Show older comments
Phoebe Daphne
on 11 Jan 2021
Commented: Phoebe Daphne
on 11 Jan 2021
Hello,
I have data stored in a n x n cell array. For example:
data = {[1 1 1] [2 2 2]; [3 3 3] [4 4 4]};
I want to iterate over this cell array and create all unique combinations of cells. In this case, they would be:
- [1 1 1] [2 2 2]
- [1 1 1] [3 3 3]
- [1 1 1] [4 4 4]
- [2 2 2] [3 3 3]
- [2 2 2] [4 4 4]
- [3 3 3] [4 4 4]
Please note that every combination (e.g. [1 1 1][2 2 2]) only exists once regardless of order (i.e., there is no [2 2 2][1 1 1] combination).
I have tried doing this with for loops, however, I can't get behind how to not create the second combination.
Important note: I am trying to do this with for-loops since I need a way to keep track of from which column the combination is coming from (i.e. if the two data points are from the same column --> this would apply to [1 1 1][3 3 3] and [2 2 2][4 4 4] in my example). Therefore any function which simply returns me the permutations or binary coefficient won't work.
0 Comments
Accepted Answer
More Answers (0)
See Also
Categories
Find more on Matrices and Arrays in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!