find column from list then save cell

1 vue (au cours des 30 derniers jours)
Vincent I
Vincent I le 23 Juin 2014
Commenté : Vincent I le 24 Juin 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

Réponse acceptée

Andrei Bobrov
Andrei Bobrov le 23 Juin 2014
C = B(:,ismember(B(1,:),A))

Plus de réponses (1)

Azzi Abdelmalek
Azzi Abdelmalek le 23 Juin 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 commentaire
Vincent I
Vincent I le 24 Juin 2014
cell2table did not work for me. I'm sure with some tweaking i could have worked.
Thank you very much for your help

Connectez-vous pour commenter.

Catégories

En savoir plus sur Structures dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by