How to convert array so that I have only numerical values

답변 (3개)

Sriram Tadavarty
Sriram Tadavarty 2020년 11월 2일
Hi Pavan,
As from the snippet provided, i can see a pattern where from 6 element the numeric value starts and has till last but before element.
Assuming temp as a variable having that data. Here is the way it can be done
numericTemp = cellfun(@(x) str2num(x(6:end-1)),temp);
Hope this helps.
Regards,
Sriram
Ameer Hamza
Ameer Hamza 2020년 11월 2일
This is an alternative approach
str = {'lat: -30.963#';'lat: -30.963#';'lat: -30.963#';'lat: -30.963#'}
nums = cellfun(@(x) sscanf(x, 'lat:%f#'), str)
Stephen23
Stephen23 2020년 11월 2일
편집: Stephen23 2020년 11월 2일
Do NOT use cellfun for this, unless really you want your code to be slow.
The most efficient solution by far is this:
str = {'lat: -30.963#';'lat: -30.964#';'lat: -30.965#';'lat: -30.966#'};
vec = sscanf([str{:}],'lat:%f#')
vec = 4×1
-30.9630 -30.9640 -30.9650 -30.9660

카테고리

도움말 센터File Exchange에서 Interpolation of 2-D Selections in 3-D Grids에 대해 자세히 알아보기

제품

릴리스

R2020a

질문:

2020년 11월 2일

편집:

2020년 11월 2일

Community Treasure Hunt

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

Start Hunting!

Translated by