How to sum same size cell blocks?

2 Ansichten (letzte 30 Tage)
Xiaohan Du
Xiaohan Du am 21 Dez. 2016
Beantwortet: John BG am 22 Dez. 2016
Hi all,
I have a cell which contains same size matrices, like this:
inpt =
[13x13 double] [13x13 double] [13x13 double] [13x13 double]
Is there a function to sum blocks within a cell? So the result would be a [13*13] matrix with elements of same entry summations of inpt.
Many thanks!

Akzeptierte Antwort

Guillaume
Guillaume am 21 Dez. 2016
sum(cat(3, inpt{:}), 3)
is one way to do it. Basically, concatenate your matrices along an extra dimension and sum along that dimension.

Weitere Antworten (1)

John BG
John BG am 22 Dez. 2016
Hi Xiaohan
first get the size of inpt
[sz1 sz2]=size(inpt)
and sum the cell2mat version of inpt
sum(reshape(cell2mat(inpt),13,13,sz2),3)
if you find my answer useful would you please mark it as Accepted Answer?
thanks in advance for time and attention
John BG

Community Treasure Hunt

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

Start Hunting!

Translated by