如何找到2个单元阵列之间的重叠?

时间:2017-06-02 06:33:16

标签: matlab overlap

我希望通过逐行比较它们来获得这两个单元格数组之间的重叠,并获得重叠的行:

ex1={'BRDT','TBP';'php','alm';'BRCA1','TP53'};  
ex2={'TBP','HIST1H2BH';'RB1','TK2';'php','alm'};
desire_output={'php','alm'}

我已经尝试过这个命令并得到< 2x1 cell>数组,但是我想要< 1x2 cell>(整行):

 a=intersect(ex1,ex2,'stable');

1 个答案:

答案 0 :(得分:0)

如何使用 ismember 并选择所需的行?

ex1={'BRDT','TBP';'php','alm';'BRCA1','TP53'};
ex2={'TBP','HIST1H2BH';'RB1','TK2';'php','alm'};
out = ismember(ex1,ex2) ;
iwant = ex1(all(out,2),:) ;