- if you are generating the structure Data, then you should follow Walter Roberson's suggestion and use a non-scalar structure to store the data. This would be the optimal solution, and it would be trivial to access the data inside the structure.
- if Data is being provided to you then unfortunately this not a very convenient format to process without loops: even if it could be possible without a loop, a loop may well be the clearest code.
how to extract data from structure efficiently
조회 수: 4 (최근 30일)
이전 댓글 표시
Hi
I have this structure with sometimes allot of A_scans:
>> Data.CH1
ans =
name: 'CH1'
Props: [1x1 struct]
A_scan1_1: [1x1 struct]
A_scan1_2: [1x1 struct]
A_scan1_3: [1x1 struct]
A_scan1_4: [1x1 struct]
A_scan1_5: [1x1 struct]
...
Where ecach scans has a "data" variable, that I want to put in a matrix row by row:
Data.CH1.A_scan1_1
ans =
name: 'A_scan1_1'
Props: [1x1 struct]
data: [1x31990 int16]
What is the most efficient way of extracting the "data" arrays into a matrix? I guess i could do a forloop but I have a feeling there might be a faster way?
댓글 수: 2
Stephen23
2016년 4월 13일
편집: Stephen23
2016년 4월 13일
It really depends on what you are doing:
답변 (1개)
Walter Roberson
2016년 4월 13일
The more efficient way to extract it efficiently is to use a single A_scan1 that is indexed -- a struct array. Then you could do something like horzcat(A_scan1.data)
댓글 수: 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!