expanding matrix

Hi all
I want to expand matrix.for example if x=[x1;x2] then the new matrix will be:
xx = [x1 x1 x1;x1 x1 x2;x1 x2 x1;x1 x2 x2;x2 x1 x1;x2 x1 x2;x2 x2 x1;x2 x2 x2]
How can I do that

 采纳的回答

[j k i]=meshgrid([x1,x2]);
xx = [i(:) j(:) k(:)];

更多回答(1 个)

Matt Fig
Matt Fig 2011-5-16
Here is a general purpose file for doing the same thing. What you are basically doing is finding the permutations of the set [x1 x2] taken three at a time with replacement. For example:
x1 = 7;x2 = 9; % Sample data
xx = npermutek([x1 x2],3);
xx =
7 7 7
7 7 9
7 9 7
7 9 9
9 7 7
9 7 9
9 9 7
9 9 9
NPERMUTEK is found here.

类别

帮助中心File Exchange 中查找有关 Resizing and Reshaping Matrices 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by