deleting number

2 visualizzazioni (ultimi 30 giorni)
kash
kash il 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 ]

Risposta accettata

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

Più risposte (1)

Wayne King
Wayne King il 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 Commenti
Oleg Komarov
Oleg Komarov il 28 Feb 2012
Sounds like a homework.
Jan
Jan il 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.

Accedi per commentare.

Categorie

Scopri di più su Audio I/O and Waveform Generation in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by