all possible combinations of vectors of unknown quantity and length
3 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
gabriele fadanelli
am 2 Aug. 2020
Kommentiert: gabriele fadanelli
am 2 Aug. 2020
let's suppose I want to find all combinations of vectors , so I have as for example in input a matrix
A=[2 5 8 9];
which gives me the length of the vectors (from 1 to specific value, 1D vectors) I should compute combinations, i.e. for this specific case a good choice would be:
allComb=combvec(1:2,1:5,1:8,1:9)'
in order to have the combination values written in rows.
The problem is: in my code the INPUT MATRIX A can change values and dimension (2nd) and I don't know how to write a code, because even if I organize in cell the vectors and perform a FOR loop, then I don't know how to call back my vectors in combvec function.
thank you whoever could help me facing this.
0 Kommentare
Akzeptierte Antwort
Bruno Luong
am 2 Aug. 2020
Generate vectors of consecutive integers to be combined
A = [2 5 8 9];
c = arrayfun(@(n) 1:n, A, 'unif', 0)
Generate combinations
c = flip(c);
[c{:}] = ndgrid(c{:});
c = cellfun(@(x) x(:), flip(c), 'unif', 0);
c = cat(2, c{:});
Display
disp(c)
3 Kommentare
Bruno Luong
am 2 Aug. 2020
>> combvec
'combvec' requires Deep Learning Toolbox.
As you see I don't have the tbx. My code works with MATLAB alone.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Loops and Conditional Statements finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!