remove common elements from 2 array

Hello Everyone,
I have two array Arr1 = [301;302;303;601;602;603]
and I have another Arr2 = [101;102;301;302;303;601;602;603;1010;1200;1249;1352]
I want to remove the common elements from both arrays
so my result should look like
Arr3 = [101;102;1010;1200;1249;1352]
How can I solve this problem

5 comentarios

Daniel Shub
Daniel Shub el 25 de Jul. de 2013
Editada: Daniel Shub el 25 de Jul. de 2013
What have you tried so far? Have you looked at INTERSECT?
the cyclist
the cyclist el 25 de Jul. de 2013
What if both Arr1 and Arr2 have elements are not part of the intersection? What do you want the output to be?
Ricky
Ricky el 25 de Jul. de 2013
I want Arr3 to be empty
Daniel Shub
Daniel Shub el 25 de Jul. de 2013
Ricky, what cyclist is saying is that your example misses an important edge condition. There are two obvious solutions that give the same result for your example arrays, but which behave very different in general.
What do you want the result to be when
Arr1 = [1; 2; 3; 4; 5; 6];
Arr2 = [1; 2; 3; 7; 8; 9];
?

Iniciar sesión para comentar.

Respuestas (1)

the cyclist
the cyclist el 25 de Jul. de 2013
Acommon = intersect(Arr1,Arr2)
Arr3 = setxor(Arr2,Acommon)
will give you the result you mentioned, but see my comment.

2 comentarios

Manjula
Manjula el 30 de Nov. de 2017
Thank you Mr Cyclist for posting the solution
prashanth shyamala
prashanth shyamala el 21 de Nov. de 2021
Brilliant! thanks!

Iniciar sesión para comentar.

Categorías

Más información sobre Loops and Conditional Statements en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 25 de Jul. de 2013

Comentada:

el 21 de Nov. de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by