(Ask again)Show every combination of N-dim vector.

1 vue (au cours des 30 derniers jours)
C Zeng
C Zeng le 24 Mai 2012
Hello, I asked it the day before yesterday but the code some expert told does not work well.
He wrote:
[C{1:N}]=ndgrid(0:2);
M=reshape(vertcat(C{:}),[],N);
However, it does show 3^N rows, but not every combination of N-dim vector of {0,1,2}. Is there another way to show all 3^N combinations and put it in a matrix?
Thank you so much!
  5 commentaires
Sean de Wolski
Sean de Wolski le 24 Mai 2012
huh, your fullfact one is better anyway.
C Zeng
C Zeng le 25 Mai 2012
Yes, Sean, your code gives 3^N rows, but they have repeated one. Also I do not understand what does it mean? It seems that it is going to construct a grid in graphics, right? But I want all factorial combinations.

Connectez-vous pour commenter.

Réponse acceptée

Daniel Shub
Daniel Shub le 24 Mai 2012
I will repeat the answer I gave to your original question
x = fullfact([3,3,3])-1
EDIT
For a general N
N = 3;
x = fullfact(repmat(3, N, 1))-1
  9 commentaires
Daniel Shub
Daniel Shub le 25 Mai 2012
See my edit.
C Zeng
C Zeng le 25 Mai 2012
Oh, yes, or using combinator.m file:
combinator(3,N)-1
Thank you so much!

Connectez-vous pour commenter.

Plus de réponses (1)

Daniel Shub
Daniel Shub le 24 Mai 2012

Catégories

En savoir plus sur Matrices and Arrays dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by