Matlab的外部产品?

时间:2013-06-26 12:42:34

标签: matlab outer-join

如何将两个向量转换为其元素的所有组合的矩阵?

例如,矢量

>> A=[1;2;3]

A =

     1
     2
     3

>> B=[4;5;6]

B =

     4
     5
     6

应该转向

  
    

[1,4; 1,5; 1,6; 2,4; 2,5; 2,6; 3,4; 3,5; 3,6]

  

ans =

 1     4
 1     5
 1     6
 2     4
 2     5
 2     6
 3     4
 3     5
 3     6

2 个答案:

答案 0 :(得分:4)

我确信有一种更简单的方法可以做到这一点,但是... meshgrid会让你关闭,你只需要执行一些数组操作来获得结果:

[BA, BB] = meshgrid(A,B);
[BA(:) BB(:)]

答案 1 :(得分:1)

meshgrid慢一个数量级,但只是为了向您展示一种不同的方法:

[kron(A,ones(numel(B),1)), kron(ones(numel(A),1), B)];
相关问题