deleting number

2 views (last 30 days)
kash
kash on 28 Feb 2012
i have values such as A=[12 20 1 5 69 70 21 50 46 52 87 83 11 21]
B=[ 70 50 12 83]
now i want to delete B values from A ,so i will have output as
C=[20 1 5 69 21 46 52 87 11 21 ]

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 28 Feb 2012
[C1,ic] = setdiff(A,B)
[i1,i1] = sort(ic)
C = C1(i1)
OR
C = A(~ismember(A,B))

More Answers (1)

Wayne King
Wayne King on 28 Feb 2012
Hi, You can use intersect to get the indices of A that intersect with elements of B and then delete those.
[C,IA,IB] = intersect(A,B);
A(IA) = [];
  3 Comments
Oleg Komarov
Oleg Komarov on 28 Feb 2012
Sounds like a homework.
Jan
Jan on 28 Feb 2012
No, kask, it is impossible to do this "without built-in command", because all you can write in Matlab requires built-in commands. If your teacher told you to do this, ask him for thinking twice.

Sign in to comment.

Categories

Find more on Audio I/O and Waveform Generation in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!