Creating loop to extract column from table in a cell within a cell?

1 view (last 30 days)
I have F (1x99 cell), within F, there are 99 tables with different numbers of rows, but 3 columns. I want to extract the 3rd column of each cell. Finally, creating a long vector. How would I create a loop that does this?
  4 Comments

Sign in to comment.

Answers (1)

Gayatri Menon
Gayatri Menon on 28 Jun 2018
Hi,
Hope this example helps you get started. Suppose there is a cell array named cell_array which has 3 tables T1, T2 and T3 each with 3 columns - Name, Age, Weight. The following code snippet can be used to get the Weight column of all these tables and create a long vector "data":
cell_array={T1,T2,T3}
data=[];
for i=1:3
temp = cell_array{i}.Weight;
data=[data;temp]
end
Hope this helps.
Thanks
Gayatri
  1 Comment
ans
ans on 12 Mar 2022
Edited: ans on 12 Mar 2022
Hello! It is really helpful for a cell array with 1x4 dimension. But for my case, I have a cell array of 1x24 that has 24 tables in it. I want to create a long vector for Weight column of each 4 tables using loops. At the end, I want to get six long vector for Weight column. Thanks!

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!