Array of structures containing arrays
조회 수: 3 (최근 30일)
이전 댓글 표시
I have an array of structures. Each structure is composed of a matrix. I need to extract a particular element of the matrix for every structure element. For example: i/p: if s is an array of 2 structures such that, s(1) = struct('field1', [1:3;4:6]); s(2) = struct('field1', [4:6;1:3]); o/p: [s(1).field1(1,3) s(2).field1(1,3)]; I can do it by the use of loops, but is there any efficient way to do it??
댓글 수: 0
채택된 답변
Andrei Bobrov
2017년 6월 28일
s(1) = struct('field1', [1:3;4:6]);
s(2) = struct('field1', [4:6;1:3]);
z = cell2mat(struct2cell(s))
out = squeeze(z(1,3,:))'
댓글 수: 5
Andrei Bobrov
2017년 6월 28일
s(1) = struct('field1', [1:3;4:6], 'field2', [1:10]);
s(2) = struct('field1', [4:6;1:3], 'field2', [11:20]);
t = cat(3,s.field1);
out = squeeze(t(1,3,:))'
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Structures에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!