# How to extract specific elements from a struct variable?

20 vues (au cours des 30 derniers jours)
Arti le 4 Sep 2023
Commenté : Voss le 4 Sep 2023
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 commentairesAfficher -2 commentaires plus anciensMasquer -2 commentaires plus anciens

Connectez-vous pour commenter.

### Réponse acceptée

Voss le 4 Sep 2023
% 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)
ans = 105×1 cell array
{20×2 double} { 5×2 double} { 7×2 double} {23×2 double} {18×2 double} {23×2 double} { 6×2 double} { 6×2 double} { 6×2 double} { 8×2 double} { 8×2 double} { 5×2 double} { 9×2 double} {14×2 double} { 8×2 double} {15×2 double}
##### 2 commentairesAfficher AucuneMasquer Aucune
Arti le 4 Sep 2023
Thank you!
Voss le 4 Sep 2023
You're welcome!

Connectez-vous pour commenter.

### Catégories

En savoir plus sur Structures dans Help Center et File Exchange

R2023a

### Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by