How to calculate a mean of column one across multiple tables?

Hi all,
I have a 21x1 cell with 100x 18 tables (attached).
What I am seeking to do is to calcuate mean of:
row 1, column1, all tables
row 2, column1, all tables
....
row 100, column 1, all tables
Repeat for remaining 17 columns
So ultimately, I will have a table 100x18.
For example: for column 1
P_acc_z = (t{1,1.P_acc_z_meancycle} + t{2,1.P_acc_z_meancycle}, + t{3,1.P_acc_z_meancycle}+ ...., + t{18,1.P_acc_z_meancycle})/18
Can you help please?

 Réponse acceptée

m=sum(arrayfun(@(x)sum(table2array(c{x}(:,1))),1:18))/1800;% c is your cell array, this finds mean of first columns
loop to find means of all columns.
for k=1:18
m(k)=sum(arrayfun(@(x)sum(table2array(c{x}(:,k))),1:18))/1800;
end

4 commentaires

Sorry, I did not explain well.
What I am seeking to do is to calcuate mean of:
row 1, column1, all tables
row 2, column1, all tables
....
row 100, column 1, all tables
Repeat for remaining 17 columns
So ultimately, I will have a table 100x18.
Your code gives me a table 1 x18. Sorry for the confusion.
s=zeros(100,18);
for k=1:18
s=s+table2array(c{k});
end
s=s/18;
I have a couple of tables which have only nan values in a single column which results in having nan values for a mean for this particular column. Is there a way to omit nan values?

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Community Treasure Hunt

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

Start Hunting!

Translated by