How to create a struct?

3 次查看(过去 30 天)
Josy M
Josy M 2020-7-17
Hello,
How can i split my "scenarioServiceCopy" 1*54 struct in two parts? For example:
  • 1-30 fields -> part 1
  • 31-54 fields in part 2
In this way i store the data in my struct:
parameter.scenarioServiceCopy(count).(namess{7})=char(array_(1,7))
I do this with a for loop. It works but everything is in one "matrix/table/struct".
I want to have something like this:
  • part 1 first 30 fields: parameter.scenarioServiceCopy(1)
  • part 2 the last 24 fields: parameter.scenarioServiceCopy(2)
But does something like this works
Thanks
  3 个评论
Josy M
Josy M 2020-7-17
difficult for me :D
is it possible to make a 2*85 struct with 16 fields? I read the manual but its really hard to understand for a hobby programmer :/
Walter Roberson
Walter Roberson 2020-7-18
How should 54 input fields map on to 2*85 with 16 fields?
v = fieldnames(scenarioServiceCopy);
tc = struct2cell(scenarioServiceCopy);
p1 = cell2struct(tc(1:30,:,:),v(1:30));
p2 = cell2struct(tc(31:end,:,:), v(31:end));
parameter.scenarioServiceCopy1 = p1;
parameter.scenarioServiceCopy2 = p2;

请先登录,再进行评论。

回答(1 个)

Bhupendra Prajapati
编辑:madhan ravi 2020-7-17
parameter = struct(scenarioServiceCopy(1),scenarioServiceCopy(2));
Just follow the exmaples given at the link below ->

类别

Help CenterFile Exchange 中查找有关 Structures 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by