separate empty cells (NaN) from others
2 次查看(过去 30 天)
显示 更早的评论
I have a table of cells ( ex: 100*75 cell)
and i want to focus on column 12 , if any cell in it is NaN (empty) , i want to separate its row from the table.
i use this code:
[ndata text alldata] = xlsread('mdr1.xls','sheet1');
[R1,C1]=size(alldata);
j=1;
K=1;
for i=1:size(alldata,1)
if isnan(alldata{i,12})
Ndate(j)=i;
j=j+1;
else
Ydate(K)=i;
K=K+1;
end
end
NAdate=alldata(Ndate,:);
DDate=alldata(Ydate,:);
xlswrite('separate.xls',DDate,1);
xlswrite('separate.xls',NADate,2);
it works...
but
I wonder if anyone has an idea to modify this code.
0 个评论
采纳的回答
Azzi Abdelmalek
2015-7-25
编辑:Azzi Abdelmalek
2015-7-25
If A is your cell array
c12=A(:,12)
id12=~cellfun(@isnan,c12)
out=A(id12,:)
If you want the part containing nan
out1=A(~id12,:)
5 个评论
Azzi Abdelmalek
2015-7-25
编辑:Azzi Abdelmalek
2015-7-25
Ok, try this
id12=~cellfun(@(x) all(isnan(x)),c12)
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 NaNs 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!