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

1 次查看(过去 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 中查找有关 Matrices and Arrays 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by