Filter löschen
Filter löschen

expanding matrix

1 Ansicht (letzte 30 Tage)
rahman
rahman am 16 Mai 2011
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

Akzeptierte Antwort

Andrei Bobrov
Andrei Bobrov am 16 Mai 2011
[j k i]=meshgrid([x1,x2]);
xx = [i(:) j(:) k(:)];

Weitere Antworten (1)

Matt Fig
Matt Fig am 16 Mai 2011
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.

Kategorien

Mehr zu Multidimensional Arrays finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by