Converting Alternative Scientific Notation to MATLAB
조회 수: 5 (최근 30일)
이전 댓글 표시
I have a file with these example numbers I have imported as strings. I can't import as numbers because they come up as NaN.
-5.769-2
3.9984-2
4.568450
These are the 3 variations of numbers in the file
I want to convert these imported strings to MATLAB double, but I get NaN for the first 2 variations.
str2double('-5.769-2') = NaN
str2double('3.9984-2') = NaN
str2double('4.568450') = 4.568450
I want to get the following
-5.769-2 = -5.769e-2
3.9984-2 = 3.9984e-2
Thanks for your assistance.
댓글 수: 4
James Tursa
2020년 11월 17일
You haven't answered my question about spacing. Are the numbers right next to each other, each in 8 columns exactly? Or ...? Can you post a sample of the lines? This would affect how people would answer your question.
채택된 답변
Walter Roberson
2020년 11월 17일
format long
S = {
'-5.769-2'
'3.9984-2'
'4.568450'
};
str2double(regexprep(S, '([-+]\d+)$', 'e$1'))
추가 답변 (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!