How to create a struct?
조회 수: 1 (최근 30일)
이전 댓글 표시
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
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/333096/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/333099/image.png)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/333102/image.png)
Thanks
댓글 수: 3
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
2020년 7월 17일
편집: madhan ravi
2020년 7월 17일
parameter = struct(scenarioServiceCopy(1),scenarioServiceCopy(2));
Just follow the exmaples given at the link below ->
참고 항목
카테고리
Help Center 및 File Exchange에서 Structures에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!