使用Matlab从矩阵生成剩余值

时间:2013-02-11 05:34:48

标签: matlab matlab-deployment

假设使用for循环生成矩阵,该矩阵以

形式给出
A = [ 1 3 4 ;...
      5 8 9 ;...
      6 3 8 ]

让另一个矩阵从给定的A矩阵生成为

B = [ 5 3 8 ]

我的问题是:我想通过仅从B列中删除A的元素来生成矩阵。

输出

C = [ 1 8 4 ;... 
      6 3 9 ]

如何使用Matlab做到这一点?

1 个答案:

答案 0 :(得分:1)

假设从每行中删除的元素数量相同,这应该有效。

A = [1 3 4; 5 8 9; 6 3 8];
B = [3 5 8];

C = A';
C(find(A' == repmat(B, size(A, 2), 1))) = [];
C = reshape(C, [], size(A, 1))'