how to execute str2num or str2double in matlab?
Afficher commentaires plus anciens
I am having trouble using commands str2num.
I have a character
t='2'
'u1'
'u2 '
I used the command p=str2double(char(t)). Right now if I use str2num, a null array appears in the output whereas using str2double gives NaN in output. While searching about these I learned that these character values are not converted to numbers.
I wanted p to store values [2, 1, 2]. How can I do that? Thanks for reading...
4 commentaires
Walter Roberson
le 9 Mai 2018
Is t a char vector that might at different times have '2' or 'u1' or 'u2 ' ? Or is t a cell array of character vectors that has those three character vectors in it? Or is t a single character vector '2 u1 u2 ' ?
In the number portion, is it necessary to recognize negative values? Is it necessary to recognize decimal points and fractions? How about exponential numbers? How about complex values?
MEENAL SINGHAL
le 9 Mai 2018
Modifié(e) : per isakson
le 9 Mai 2018
per isakson
le 9 Mai 2018
Modifié(e) : per isakson
le 9 Mai 2018
Hint:
t = { '2' 'u1' 'u2 '};
c = regexp( t, '[\d ]+', 'match' );
p = cellfun( @str2double, c )
outputs
p =
2 1 2
MEENAL SINGHAL
le 9 Mai 2018
Modifié(e) : MEENAL SINGHAL
le 9 Mai 2018
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Data Type Conversion dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!