separate empty cells (NaN) from others
1 回表示 (過去 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!