store char in a column matrix

7 次查看(过去 30 天)
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?

采纳的回答

Rik
Rik 2023-6-18
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 个评论
Steven Lord
Steven Lord 2023-6-18
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 2023-6-18
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).

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Matrices and Arrays 的更多信息

产品


版本

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by