Adding elements to array without repeating

Hello,
my question is the following: I have a struct file and I need to add all the elements in the vectors contained in the struct in a single vector without repeating them. My struct is shaped like this:
F.a=[226;227;228;229;290]
F.b=[52;102;230;231;232;233;234;235]
F.c=[37;233;234;235]
and so on. I need to put all the elements of the vectors together but avoiding, for example, to show 233, 234 and 235 twice. Is there a way to do that?
Thank you in advance for your answers!

 Respuesta aceptada

Yongjian Feng
Yongjian Feng el 8 de Jul. de 2021
This will work:
result = [F.a F.b F.c];
result = unique(result);

Más respuestas (1)

Yongjian Feng
Yongjian Feng el 7 de Jul. de 2021

0 votos

Use ismember(233, F.a) before adding it to F.a.

6 comentarios

Marco Gualtieri
Marco Gualtieri el 7 de Jul. de 2021
Hello Yongjian Feng, thank you for your answer
I would like the code to do it automatically, the actual struct file is much bigger than the one I reported
Please provide more details. Do you want to merge F.a, F.b, and F.c into a new array, and then get rid of all the duplicated? If so
result = [F.a F.b F.c];
result = unique(result);
Marco Gualtieri
Marco Gualtieri el 8 de Jul. de 2021
Yes, that is what I would like to do. Your idea is the right one, I put it in a loop to make it merge all the substructures of F and now it works. Thank you for your help!
Marco Gualtieri
Marco Gualtieri el 8 de Jul. de 2021
Is there a way to accept your comment as an answer?
Yongjian Feng
Yongjian Feng el 8 de Jul. de 2021
I can put it to an answer, then you can accept it. This will help the other users. Thanks.
Marco Gualtieri
Marco Gualtieri el 8 de Jul. de 2021
You're welcome, thank you for your help!

Iniciar sesión para comentar.

Categorías

Preguntada:

el 7 de Jul. de 2021

Comentada:

el 8 de Jul. de 2021

Community Treasure Hunt

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

Start Hunting!

Translated by