Assigning strings from struct variable
4 次查看(过去 30 天)
显示 更早的评论
Hi everyone! I'm trying to assign string from a structure to a array.
If I try
array=SIGNAL(:).label;
in the command window I get all the strings, but I want to assign it to a variable. If I try with
array=SIGNAL(:).label;
or
array{:}=SIGNAL(:).label;
I just get one of the labels. If I try with...
for i=1:length(SIGNAL)
array(i,:)=SIGNAL(i).label;
end
It works, but I'm trying to do it without a for in order to save time.
0 个评论
采纳的回答
Stephen23
2021-5-4
编辑:Stephen23
2021-5-4
Use a comma-separated list:
Depending on the data class of your data:
array = [SIGNAL.label]; % strings
array = {SIGNAL.label}; % cell array of char vectors
For example:
A(1).C = 'hello'; % char
A(1).S = "cat"; % string
A(2).C = 'world'; % char
A(2).S = "hat"; % string
S = [A.S] % string
C = {A.C} % cell of char
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Characters and Strings 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!