Effacer les filtres
Effacer les filtres

How to convert string to array

114 vues (au cours des 30 derniers jours)
mor zarfati
mor zarfati le 23 Avr 2017
Commenté : Shayla Lussiné le 31 Mar 2023
I have a list of names in a string variable ( for example "'a','b','c'") and i need to convert it to an array [a;b;c]. is there a way to do this? thank you!
  1 commentaire
Stephen23
Stephen23 le 23 Avr 2017
Modifié(e) : Stephen23 le 23 Avr 2017
If you are trying to access variables dynamically using string names, then read this:

Connectez-vous pour commenter.

Réponses (4)

amine&&
amine&& le 23 Avr 2017
Hello, you can see the documentation for str2num() in https://fr.mathworks.com/help/matlab/ref/str2num.html.

mor zarfati
mor zarfati le 23 Avr 2017
hi, my variables are not numbers, they are gene names so i cannot convert to numbers. thank you!
  1 commentaire
amine&&
amine&& le 23 Avr 2017
Hello, you can see this function cell2mat() in https://fr.mathworks.com/help/matlab/ref/cell2mat.html .

Connectez-vous pour commenter.


Image Analyst
Image Analyst le 23 Avr 2017
Modifié(e) : Image Analyst le 23 Avr 2017
Use char:
% Define cell array of strings:
ca = {'a','b','c', 'demo', 'long string'}
% Make character array
charArray = char(ca)
Shows:
ca =
1×5 cell array
'a' 'b' 'c' 'demo' 'long string'
charArray =
a
b
c
demo
long string

Shayla Lussiné
Shayla Lussiné le 31 Mar 2023
Déplacé(e) : Stephen23 le 31 Mar 2023
It is not necessary to convert it in a array 'cuz when you enter the text, this is already an array of characters. For example, if you enter text = 'hello', when you put text(1) the result will be 'h'. It's just like with the numbers.
  2 commentaires
Image Analyst
Image Analyst le 31 Mar 2023
Modifié(e) : Image Analyst le 31 Mar 2023
text is a built in function and should not be used for variable names. I think what you meant was
plot((1 : 5), randi(8, 1, 5), 'b.-', 'LineWidth', 2);
grid on;
str = 'Hello Shayla';
x = 2;
y = 5; % Whatever.
text(x, y, str, 'FontSize', 30, 'FontWeight', 'bold', 'Color', 'r');
text(x, 4, str(1), 'FontSize', 30, 'FontWeight', 'bold', 'Color', 'm');
Shayla Lussiné
Shayla Lussiné le 31 Mar 2023
I didn't knew that, and thanks for the correction. What I mean was if you insert a string of characters in a variable and if you want to use one of the letters you just simply type the position. Like
my_variable='abc'
%in case "abc" then just char(my_variable)
my_variable(1)

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