How to extract specific elements from a struct variable?
5 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I'm using a piece of code wherein the output is saved as a "struct" variable as in the screenshot below:

Within this, the traces variable is arranged as shown below (looks like a cell array):

Now I need to select values based on the first column, i.e., anything over 5x11 (the first element has to be 5 or greater). Plus, each of these "nx11 table" itself is arranged like so:

And eventually I just need to get the "row" and "col" columns from the tables which have (5+) x 11elements (that's the end goal). I got the code from somewhere to process my data and thus, don't know how to modify it to give output in a different way. But if someone could help me out, even partially, with these steps that would be great? I've attached the output along. Thanks!
0 Kommentare
Akzeptierte Antwort
Voss
am 4 Sep. 2023
load trackResults2.mat
% idx is a logical vector, with one element for each row of trackRes.traces,
% which says whether the table in column 1 of that row of trackRes.traces
% has at least 5 rows:
idx = cellfun(@(x)size(x,1)>=5,trackRes.traces(:,1));
% from each of those tables (i.e., trackRes.traces(idx,1)), get the row and
% col columns:
result = cellfun(@(x)[x.row x.col],trackRes.traces(idx,1),'UniformOutput',false)
2 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Tables finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!