1
votes

I have a very large dataset arranged into multiple structure arrays in MATLAB. The structures look something like this:

Flight1=   

.testpoint = 1
.Mach = 0.8
.Speed = 300
.Cieling = 35000
.Data = [A] % A is an MxN matrix

Similarly there are multiple test points for multiple flights. Is there a way to retrieve the Data of only specified test points? For example I want to look at the Data of ALL the test points whose .Mach = 0.8 or where .testpoint = 2?

I hope I have made it clear enough.

1

1 Answers

2
votes

Assuming you have a struct array Flight where Flight( k ) is a struct with the fields you described, then:

sel = [ Flight(:).Mach ] == 0.8; % select all flights with Mach == 0.8
poitEightMach = Flight( sel );   % selecting them into a separate struct array

sel = [Flight(:).testpoint] == 2;
testPoint2 = Flight( sel );   % select all flights with testpoint == 2