String 根据每行中的空单元格,从单元格数组中删除行
我有一个8列的单元格数组。有时,在最后5列中,我会得到以下内容:[](空单元格)。万一发生这种情况,我想完全删除那一行。例如:String 根据每行中的空单元格,从单元格数组中删除行,string,matlab,delete-row,cell-array,String,Matlab,Delete Row,Cell Array,我有一个8列的单元格数组。有时,在最后5列中,我会得到以下内容:[](空单元格)。万一发生这种情况,我想完全删除那一行。例如: 19970101 18659 183 '19980820' '00018659' 'RUNYON L' '00001534' 'MERRILL' 19970101 18290 183 '19981221' '00018290' 'MANTON S' '00001534' 'MERRILL' 19970101 835 183 [ ] [ ]
19970101 18659 183 '19980820' '00018659' 'RUNYON L' '00001534' 'MERRILL'
19970101 18290 183 '19981221' '00018290' 'MANTON S' '00001534' 'MERRILL'
19970101 835 183 [ ] [ ] [ ] [ ] [ ]
19970101 10280 183 '19980819' '00010280' 'BRENNAN S' '00001534' 'MERRILL'
我想要的是:
19970101 18659 183 '19980820' '00018659' 'RUNYON L' '00001534' 'MERRILL'
19970101 18290 183 '19981221' '00018290' 'MANTON S' '00001534' 'MERRILL'
19970101 10280 183 '19980819' '00010280' 'BRENNAN S' '00001534' 'MERRILL'
非常感谢您的帮助。假设
input\u
是输入单元格数组,请尝试以下操作-
input_cellarray(all(cellfun(@numel,input_cellarray),2),:)
如果您希望我们必须删除最后5列中有空单元格的行,那么您需要稍微调整代码-
input_cellarray(any(cellfun(@numel,input_cellarray(:,end-4:end)),2),:)
成功了!非常感谢,我遇到了很多困难,因为我没有处理数字。非常感谢@用户3557054太棒了!很高兴知道它对您有效,您是对的,单元格数组有时可能会很复杂。您是否知道如何删除/擦除重复的行,我的意思是完全相等的行,我要删除,只保留第一行。谢谢大家!@user3557054我认为最好把它作为一个单独的问题发布,因为它看起来完全不同。我会这样做,明天的第一件事!谢谢:)