I have data in one column as follows
x =
[22]
'22 .8 '
[30]
'39 .6 '
[44]
[48]
'49 .6 '
'50 .8 '...
how do I convert to a string?
I have tried using str2double (x) but it displays the results
Nan
22.8000
Nan
39.6000
Nan
Nan
49.6000
50.8000
I am confused when in one data there are 2 different data, namely ('x' and [x])..
I am very grateful to those who have been kind enough to help me
Regards
Jan

 채택된 답변

KSSV
KSSV 2019년 4월 30일

0 개 추천

x = { [22]
'22 .8 '
[30]
'39 .6 '
[44]
[48]
'49 .6 '
'50 .8 '} ;
idx = cellfun(@ischar,x) ;
y = cellfun(@num2str,x(~idx),'un',0)
x(~idx) = y ;
x

추가 답변 (1개)

Andrei Bobrov
Andrei Bobrov 2019년 4월 30일

0 개 추천

x ={...
[22]
'22 .8 '
[30]
'39 .6 '
[44]
[48]
'49 .6 '
'50 .8 '};
lo = cellfun(@ischar,x);
out = zeros(size(x));
out(~lo) = cell2mat(x(~lo));
out(lo) = str2double(regexprep(x(lo),'\s',''));

댓글 수: 1

Jan Risn
Jan Risn 2019년 4월 30일
thank you for your help, this really helped me

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Data Type Conversion에 대해 자세히 알아보기

질문:

2019년 4월 30일

댓글:

2019년 4월 30일

Community Treasure Hunt

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

Start Hunting!

Translated by