How can I generate the matrix [1 1; 1 2; 1 3 ; 2 1; 2 2; 2 3; 3 1 ; 3 2 ; 3 3] without loops?

1 次查看(过去 30 天)
And given matrices XX and YY of sizes 3X3, how can I generate the following matrix:
[XX(1,1) YY(1,1); XX(1,2) YY(1,2);XX(1,3) YY(1,3); XX(2,1) YY(2,1); XX(2,2) YY(2,2); XX(2,3) YY(2,3); XX(3,1) YY(3,1); XX(3,2) YY(3,2); XX(3,3) YY(3,3)]
I mean of course, without writing it explicitly.
Thanks!!

采纳的回答

C.J. Harris
C.J. Harris 2012-11-15
I have no idea what your data is, but to generate the matrix in the question try:
out = unique(nchoosek([1:3, 1:3], 2), 'rows');

更多回答(2 个)

Andreas Goser
Andreas Goser 2012-11-15
?? "Just telling me how to generate the matrix in the title would be a huge help!" ??
a=[1 1; 1 2; 1 3 ; 2 1; 2 2; 2 3; 3 1 ; 3 2 ; 3 3]

Jos (10584)
Jos (10584) 2012-11-15
COMBN!
combn(1:3,2)
ans =
1 1
1 2
1 3
2 1
2 2
2 3
3 1
3 2
3 3

类别

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