Why does str2num truncate my number so early?

22 views (last 30 days)
When I try to convert from string to number, I lose precision?
whos test_str
Name Size Bytes Class Attributes
test_str 1x9 18 char
K>> test_str
test_str =
0.067354
K>> str2num(test_str)
ans =
0.0674

Accepted Answer

José-Luis
José-Luis on 23 Jun 2014
format long
str2num(test_str)
  2 Comments
Andrew Reibold
Andrew Reibold on 23 Jun 2014
Thank you Jose-Luis
This worked great. I presume that this changes the format for any future things I type as well?
Does anyone know what is the 'default' format if it is not long?
José-Luis
José-Luis on 23 Jun 2014
You could read the documentation:
doc format
Note that this only changes how the number is displayed. Its internal representation is, by default in Matlab, a double.

Sign in to comment.

More Answers (1)

Sara
Sara on 23 Jun 2014
Use
sprintf
so you can control the precision you want.
  3 Comments
Sara
Sara on 23 Jun 2014
I read it the other way around, sorry.
Jairo Andrés Gutiérrez Suárez
Yep but that method is not efficient. There should be a way to use the exact number of decimals. What if I am using srt2num to find a folder with the same number I looked for?

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!