2017-04-02 43 views
0

在MATLAB(R2015b)我有包含多個列向量一個非常大的細胞C可以簡化爲:在C過濾不包含某些單詞的行嗎?

C = [9000x1 double] [9000x1 double] {9000x1 cell} {9000x1 cell} 

的最後兩列中,兩個小區(9000x1細胞),所述第一小區列包含單詞'GREN''BLU',第二個單元格列包含單詞'OVR''UNDR'隨機。

所以,在我的腦海裏,例如C前四行可能的外觀:

[ 123 54.3 'BLU' 'UNDR'; 125 51.3 'GREN' 'OVR'; 128 55.1 'GREN' 'UNDR'; 129 51.1 'BLU' 'OVR'] 

我怎麼能過濾掉包含單詞行'BLU'和/或'OVR'?即使得上述示例變爲:

[ 123 54.3 'BLU' 'UNDR'; 125 51.3 'GREN' 'OVR'; 129 51.1 'BLU' 'OVR'] 

我試圖將所述細胞分化成矩陣格式(cell2mat),然後過濾基質沒有任何的運氣。提前致謝!

回答

1

使用strcmp

C = { 123, 54.3 ,'BLU', 'UNDR'; 125, 51.3, 'GREN', 'OVR'; 128, 55.1, 'GREN', 'UNDR'; 129,51.1,'BLU','OVR'}; 
idxs = strcmp(C(:,3),'BLU') | strcmp(C(:,4),'OVR'); 
CC = C(idxs,:) 
相關問題