如何删除行有' - '在他们的专栏中?

时间:2017-05-20 15:46:23

标签: matlab rows cells

我有一个大小为(37080 * 2)的单元格数组,我想删除行中的' - '在第1列或第2列。     细胞= {' GIF'' GHF&#39 ;;' FEH'' - &#39 ;;' ACACA',& #39; BRCA1&#39 ;;' - '' TBCD&#39 ;;' NKX3-1'' ATXN1'} 需要输出:     {' GIF'' GHF&#39 ;;' ACACA'' BRCA1&#39 ;;' NKX3-1'&# 39; ATXN1'}

我尝试了strcmp,但我只是犯了错误。

for row1 = 1:size(cell,1)
    if strcmp(cell(row1,1),'-')|| strcmp(cell(row1,2),'-')
        cell(row1,:) = [];
    end
end

1 个答案:

答案 0 :(得分:1)

此方法应该有效。 Brotli适用于单元格并返回矩阵。然后在第二维上使用any

c={'gif','ghf';'feh','-';'ACACA','BRCA1';'-','TBCD';'NKX3-1','ATXN1'} 
c(any(strcmp(c,'-'),2),:)=[]

输出:

3×2细胞阵列

'gif'       'ghf'  
'ACACA'     'BRCA1'
'NKX3-1'    'ATXN1'