All combinations not being generated

Hello everyone,
Running a code to get all combinations of vector. Each combination is unique on its own. Meaning, [.4, .1, .1] is different from [.1, .1, .4] and so on.
Ok, here is the code
A = [0.4, 0.25, 0.1] %vector
[A1,A2,A3] = ndgrid(A);
my_matrix= [A3(:),A2(:),A3(:)]
It does not give all combinations. In fact, the example stated above is missing.
If you run it and have a look at the last column, you'll see it is copy of the first column.
What am I doing wrong?
Thanks in advance!

 Risposta accettata

klb
klb il 29 Nov 2020
update: In line 3 of the code A3(:) is repeated twice, resulting in the 'error'
Follwing is what it should read :
my_matrix= [A1(:),A2(:),A3(:)]

Più risposte (1)

perms(A);

3 Commenti

klb
klb il 29 Nov 2020
Hello David,
perms() skips certian combinations such as [.4, .1, .1] because for perms(), order matters
Also I caught my mistake : in line 3 I am repeating A3(:), twice i.e. it should have been :
my_matrix= [A1(:),A2(:),A3(:)]
I realized that right after posting. But questions cant be deleted. Time to take a break from coding. Thank you for the answer though!
Rik
Rik il 29 Nov 2020
I would suggest reverting your edit, posting your edit as an answer and accept it.
klb
klb il 29 Nov 2020
done.

Accedi per commentare.

Categorie

Scopri di più su Loops and Conditional Statements in Centro assistenza e File Exchange

Richiesto:

klb
il 29 Nov 2020

Commentato:

klb
il 29 Nov 2020

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by