I currently have a 6x4 cell. Most of the cells are populated with numbers, while the remaining have zeros. Using 'isnumeric' I have checked that the cells that contain numbers are actually characters, while those with zeros are numbers. I would like to convert the characters to numbers but am unsure how to do so and keep the zeros (they "disappear" when performing str2num since they are already numbers. How do I standardize a way to search for the characters/zeros and then have them all be numbers?

 채택된 답변

Jan
Jan 2018년 3월 21일
편집: Jan 2018년 3월 21일

1 개 추천

As far as I understand you have something like this:
C = {'123', 0, '456.4'; ...
0 '987', '3.14'}
Now convert all char vectors to numbers:
index = cellfun('isclass', C, 'char');
C(index) = num2cell(str2double(C(index)))
C = {123, 0, 456.4; ...
0 987, 3.14}
Does this match your needs?

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 Cell Arrays에 대해 자세히 알아보기

질문:

2018년 3월 21일

편집:

Jan
2018년 3월 21일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by