Split number into parts
5 ビュー (過去 30 日間)
古いコメントを表示
I have a logger which records lat and long GPS data in Degrees Minutes Decimal format and I need to convert it into Degrees Decimal. For example the format from the logger is:
3947.787, -10454.28
I need to split this into:
39 47.787 -104 54.28
I can then convert these values into Degrees Decimal. The part I'm struggling with in my head is having the degrees value either 2 or 3 characters. If they where all the same size I think it's be far easier.
Thanks in advance everyone.
1 件のコメント
James Tursa
2018 年 3 月 15 日
Do you have those lat/long values in your MATLAB workspace as char data or as double data?
採用された回答
Stephen23
2018 年 3 月 15 日
編集済み: Stephen23
2018 年 3 月 15 日
If the minutes always has exactly two digits then this can be easily solved using a regular expression:
>> str = '3947.787, -10454.28';
>> tkn = regexp(str,'(\d+)(\d{2}\.\d+)','tokens');
>> str2double(vertcat(tkn{:}))
ans =
39 47.787
104 54.28
Note that this regular expression will not work if minutes can have other than two digits.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Dates and Time についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!