Why does str2num truncate my number so early?

6 vues (au cours des 30 derniers jours)
Andrew Reibold
Andrew Reibold le 23 Juin 2014
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

Réponse acceptée

José-Luis
José-Luis le 23 Juin 2014
format long
str2num(test_str)
  2 commentaires
Andrew Reibold
Andrew Reibold le 23 Juin 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 le 23 Juin 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.

Connectez-vous pour commenter.

Plus de réponses (1)

Sara
Sara le 23 Juin 2014
Use
sprintf
so you can control the precision you want.
  3 commentaires
Sara
Sara le 23 Juin 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?

Connectez-vous pour commenter.

Catégories

En savoir plus sur Data Type Conversion dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by