calculate mean af cell
1 visualización (últimos 30 días)
Mostrar comentarios más antiguos
fereshte
el 12 de Jul. de 2014
I have a cell with 30 rows., In each row there are 39 columns. Every ten folders belong to one person. For each column I want to calculate the average value for the ten folders and give this value instead of 10 different amounts. then do it for folders from 11 to 20 and 21 to 30.
7 comentarios
Azzi Abdelmalek
el 13 de Jul. de 2014
Editada: Azzi Abdelmalek
el 13 de Jul. de 2014
Each 10 rows from what?
Respuesta aceptada
Azzi Abdelmalek
el 12 de Jul. de 2014
Editada: Azzi Abdelmalek
el 13 de Jul. de 2014
clear out
m1=reshape(1:30,10,3);
for k=1:3
m=data_matrix(m1(:,k));
f=num2cell(reshape([m{:}],39,[])',1);
out{1,k}=arrayfun(@(x) mean(cell2mat(f{x}'),2),1:39,'un',0);
end
out=repmat(out,10,1)
out=out(:)
9 comentarios
Más respuestas (1)
Roger Stafford
el 12 de Jul. de 2014
If your "cell" is an ordinary 'double' 30 x 39 array, A, do this:
B = [mean(A(1:10,:),1);mean(A(11:20,:),1);mean(A(21:30,:),1)];
or else this:
B = reshape(mean(reshape(A,10,[]),1),3,[]);
Either method should work.
1 comentario
Ver también
Categorías
Más información sobre Characters and Strings 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!