Create Matrix from Multiple Matrices

11 Ansichten (letzte 30 Tage)
Rounak Saha Niloy
Rounak Saha Niloy am 15 Mär. 2022
Beantwortet: Rounak Saha Niloy am 15 Mär. 2022
I have 3 matrices as follows-
A = [1 2 3]
A = 1×3
1 2 3
B = [4 5 6]
B = 1×3
4 5 6
C = [7 8 9]
C = 1×3
7 8 9
I want to create a matrix D as follows-
[1 4 7; 1 4 8; 1 4 9; 1 5 7; 1 5 8; 1 5 9; 1 6 7; 1 6 8; 1 6 9; 2 4 7; 2 4 8; 2 4 9; 2 5 7; 2 5 8; 2 5 9; 2 6 7; 2 6 8; 2 6 9; 3 4 7; 3 4 8; 3 4 9; 3 5 7; 3 5 8; 3 5 9; 3 6 7; 3 6 8; 3 6 9]
ans = 27×3
1 4 7 1 4 8 1 4 9 1 5 7 1 5 8 1 5 9 1 6 7 1 6 8 1 6 9 2 4 7
How do I do this?

Akzeptierte Antwort

Rounak Saha Niloy
Rounak Saha Niloy am 15 Mär. 2022
I have got a better option since my matrix size is large and no. of matrices is also large.
If my matrices are- A, B,C and so on...
D= combvec(A,B,C, ...)

Weitere Antworten (2)

Walter Roberson
Walter Roberson am 15 Mär. 2022
A = [1 2 3];
B = [4 5 6];
C = [7 8 9];
[Ag, Bg, Cg] = ndgrid(C, B, A);
D = fliplr([Ag(:), Bg(:), Cg(:)])
D = 27×3
1 4 7 1 4 8 1 4 9 1 5 7 1 5 8 1 5 9 1 6 7 1 6 8 1 6 9 2 4 7

Kevin Holly
Kevin Holly am 15 Mär. 2022
A = [1 2 3];
B = [4 5 6];
C = [7 8 9];
D = [];
for i = A
for ii = B
for iii = C
D = [D;i ii iii];
end
end
end
D
D = 27×3
1 4 7 1 4 8 1 4 9 1 5 7 1 5 8 1 5 9 1 6 7 1 6 8 1 6 9 2 4 7

Kategorien

Mehr zu Matrices and Arrays finden Sie in Help Center und File Exchange

Tags

Produkte


Version

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by