remove values of a matrix from another

5 次查看(过去 30 天)
Hi,
I have 2 matrices that are just lists of numbers. Matrix "A" is 380x1 and Matrix "B" is 230x1. I am trying to remove all of the numbers that are in "B" from "A". All of the numbers that are in B are in A so that should not be a problem. I have been trying to use
A(B)=[];
That is giving me the error "Index of element to remove exceeds matrix dimensions." I don't understand this since B is smaller than A.
Are there any other ways to do this?
Thanks in advance.

采纳的回答

José-Luis
José-Luis 2014-5-6
A = A(~ismember(A,B))

更多回答(1 个)

Sara
Sara 2014-5-6
If A and B are 1D arrays:
for i = 1:numel(B)
A(A==B(i)) = [];
end

类别

Help CenterFile Exchange 中查找有关 Matrices and Arrays 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by