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

16 visualizaciones (últimos 30 días)
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?

Respuesta aceptada

David Hill
David Hill el 16 de Mzo. de 2022
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 comentarios
Tomaszzz
Tomaszzz el 16 de Mzo. de 2022
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?

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

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

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by