How can I compare two cell arrays inside two different structures?

I have two structures model and dataMtb. I want to compare the fields model.grRules and dataMtb.gene having dimensions 1128*1 and 4109*1 respectively. I want to create a cell array which would give me a list of only those genes which are common between the two cell arrays. I am attaching the .mat files for reference. Please note that the cells in model.grRules cell array may contain names of more than one gene in each cell. How do I achieve the above objective?

 Réponse acceptée

Ameer Hamza
Ameer Hamza le 18 Mai 2018
Modifié(e) : Ameer Hamza le 18 Mai 2018
This code will extract common values of genes which occur in either of the vectors.
list1 = string(dataMtb.gene);
list2 = string(iEK1011.grRules);
commonValues = list1(cellfun(@(x) any(contains(list2, x)), list1));

Plus de réponses (0)

Catégories

En savoir plus sur Genomics and Next Generation Sequencing dans Centre d'aide et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by