Access Time Table elements in a struct array

2 次查看(过去 30 天)
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.

回答(1 个)

sloppydisk
sloppydisk 2018-5-31
编辑:sloppydisk 2018-5-31
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))

类别

Help CenterFile Exchange 中查找有关 Tables 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by