Replacing NaN with some specific values in a mix data type of cell.
조회 수: 2 (최근 30일)
이전 댓글 표시
Hi there, I'm looking for functions that can replace Nan with some specific values in a mix data type of cell. Mix data type as in there's some cell containing strings, some are containing num.
I tried using
table(cellfun(@isnan,table))={'0'}
and I got this
Error using cellfun
Non-scalar in Uniform output, at index 1, output 1.
Set 'UniformOutput' to false.
Please help. Thanks!
댓글 수: 0
채택된 답변
Jan
2017년 10월 18일
편집: Jan
2017년 10월 18일
Start with a simple loop:
for iC = 1:numel(C)
aC = C{iC};
if isfloat(aC) && ~isempty(aC) % Only SINGLE and DOUBLE can be NaN
aC(isnan(aC)= 0;
C{iC} = aC;
end
end
댓글 수: 2
Jan
2017년 10월 18일
This replaces all empty cells by 0 and NaN does not appear at all. If you want this, use the simpler and faster:
C(cellfun('isempty', C)) = {0};
If your problem is not solved now, please post a small example of the input and output. My code converts:
C = {1, [2, NaN], 'hello', [], NaN}
to
C = {1, [2, 0], 'hello', [], 0}
And your code does:
C = {1, [2, NaN], 'hello', 0, NaN}
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Data Type Conversion에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!