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에서 Structures에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!