store char in a column matrix

7 views (last 30 days)
Alberto Acri
Alberto Acri on 18 Jun 2023
Commented: Rik on 18 Jun 2023
Hi. I have a for loop that generates char like this: 'parameter_1' ('parameter_2' and so on).
I would like to store them all in a matrix M. Then have on the workspace something like this:
M = [parameter_1;
parameter_2;
...]
Is there an easy way to do this?

Accepted Answer

Rik
Rik on 18 Jun 2023
If you use a cell array instead, the parameters don't need to have the same number of characters. That will also make it easy to convert the a string and back, should you ever need to.
  3 Comments
Steven Lord
Steven Lord on 18 Jun 2023
If you don't need them as char arrays, I recommend using a string array instead of a cell array containing char arrays. You can even vectorize the creation of the text data using the + operator for strings.
n = (1:5).'
n = 5×1
1 2 3 4 5
s = "parameter_" + n.^2
s = 5×1 string array
"parameter_1" "parameter_4" "parameter_9" "parameter_16" "parameter_25"
check = s(4) % should be "parameter_16"
check = "parameter_16"
Rik
Rik on 18 Jun 2023
Just to add the final point: if you are using cells you need to use {} to access the content, otherwise you're dealing with the container (i.e. the cell element).

Sign in to comment.

More Answers (0)

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Products


Release

R2021b

Community Treasure Hunt

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

Start Hunting!