Access Time Table elements in a struct array

3 Ansichten (letzte 30 Tage)
Katarina Godden
Katarina Godden am 31 Mai 2018
Kommentiert: Katarina Godden am 9 Jun. 2018
I have a struct array with 603 elements and 7 fields.
One field contains a time table with 60 variables.
I want to access specific elements in the last row of all 603 time tables, preferably as an array size(603,specificElements) without running a for loop or using getfield.
this is my current code
for k = 1:603
temp(k,:) = getfield(All_Nodes,{k,1},'ProvisionedPlanCount',{17,1:60});
end
then I convert the resulting table to an array and continue in my endeavors.

Antworten (1)

sloppydisk
sloppydisk am 31 Mai 2018
Bearbeitet: sloppydisk am 31 Mai 2018
You could use arrayfun to put the elements you need in cells and then combine them using cell2mat:
a(1:5) = struct('myField', reshape(1:100, 10, 10));
elemCell = cell2mat(arrayfun(@(x) x.myField(end, end-5:end), a, 'UniformOutput', false))

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!

Translated by