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

3 次查看(过去 30 天)
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 个评论
C Zeng
C Zeng 2012-5-25
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.

请先登录,再进行评论。

采纳的回答

Daniel Shub
Daniel Shub 2012-5-24
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 个评论
C Zeng
C Zeng 2012-5-25
Oh, yes, or using combinator.m file:
combinator(3,N)-1
Thank you so much!

请先登录,再进行评论。

更多回答(1 个)

Daniel Shub
Daniel Shub 2012-5-24

类别

Help CenterFile Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by