Convertir un tableau de chaînes à un vecteur de nombres
J'ai ceci:
d = {'2.5', '3.5'};
d =
'2.5' '3.5'
Comment puis-je convertir un vecteur de nombres?
d = 2.5 3.5
str2num(d) dit " Exige une chaîne ou un tableau de caractères d'entrée.'. Il y a beaucoup de valeurs dans le tableau réel afin de ne pas le faire élément par élément.
a été répondu à plusieurs reprises, mais voir ma réponse sur la façon d'appliquer
a été répondu à plusieurs reprises, mais voir ma réponse sur la façon d'appliquer
str2num
(ou mieux str2double
) sur chaque élément d'une matrice de cellules.OriginalL'auteur abhishek | 2013-03-16
Vous devez vous connecter pour publier un commentaire.
Étant donné que vous avez une cellule de tableau de valeurs de chaîne, vous pouvez utiliser
cellfun
à appliquerstr2num
de conversion sur chaque entrée. La sortie sera un vecteur/matrice des valeurs converties.Cependant, vous êtes mieux à l'aide de
str2double
questr2num.
De la la documentation:Mise à jour: @beurk points, vous pouvez appeler
str2double()
directement sur le tableau de cellule pour le même résultat.Noter que le même appel avec
str2num()
donnera le "doit être une chaîne ou un tableau de chaînes" erreur.bon point. mis à jour. Comme une note, cela s'applique uniquement à
str2double()
bien, et passtr2num()
.str2double est d'environ 10 à 20% plus lent que cellfun avec string2mat.
OriginalL'auteur gevang