Access Time Table elements in a struct array

2 visualizaciones (últimos 30 días)
Katarina Godden
Katarina Godden el 31 de Mayo de 2018
Comentada: Katarina Godden el 9 de Jun. de 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.

Respuestas (1)

sloppydisk
sloppydisk el 31 de Mayo de 2018
Editada: sloppydisk el 31 de Mayo de 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))
  1 comentario
Katarina Godden
Katarina Godden el 9 de Jun. de 2018
I am dealing with TimeTables in "myField" not an array.

Iniciar sesión para comentar.

Categorías

Más información sobre Tables en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by