find column from list then save cell

1 visualización (últimos 30 días)
Vincent I
Vincent I el 23 de Jun. de 2014
Comentada: Vincent I el 24 de Jun. de 2014
Hi,
I have two cells:
A = {'One','Four','Five'};
B = {'One','Two','Three','Four','Five';1 2 3 4 5;6 7 8 9 10};
Find A in B = C
C = {'One','Four','Five';1 4 5;6 9 10}
As shown above, I would like find the columns from A in B and the save them to another cell C without using either a for or while loop.
Cell A can have different numbers so whats shown above its not always the same.
Thank you

Respuesta aceptada

Andrei Bobrov
Andrei Bobrov el 23 de Jun. de 2014
C = B(:,ismember(B(1,:),A))

Más respuestas (1)

Azzi Abdelmalek
Azzi Abdelmalek el 23 de Jun. de 2014
A = {'One','Four','Five'};
B = {'One','Two','Three','Four','Five';1 2 3 4 5;6 7 8 9 10};
If you work with tables
BB=cell2table(B(2:end,:),'VariableNames',B(1,:))
C=BB(:,A)
  1 comentario
Vincent I
Vincent I el 24 de Jun. de 2014
cell2table did not work for me. I'm sure with some tweaking i could have worked.
Thank you very much for your help

Iniciar sesión para comentar.

Categorías

Más información sobre Cell Arrays en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by