Adding three cells element wise using cellfun

Folks,
I have three cell arrays of the form 1*6 each containing an 18*9 double. I have attempted to add each corresponding element in each cell array. Ie the ith element of cell A + ith element of cell B + the ith element of cell C.
D = cellfun(@(x,y,z){x+y+z},A{ii},B{ii}, C{ii});
but i get an error stating
??? Error using ==> cellfun Input #2 expected to be a cell array, was double instead.
Any suggestions? B

2 个评论

The ith element of cell A is a 18x9 array, is it right?
A is a 1*6 cell
A{1,1} is an 18*9 double matrix
A{1,2} is an 18*9 double matrix
A{1,n} is an 18*9 double matrix
A{1,6} is an 18*9 double matrix
looking to add the corresponding elements in each matrix.

请先登录,再进行评论。

回答(3 个)

n=2;
A{n}+B{n}+C{n}
Is it what you are asking for?
% or maybe you want this
ii=5
out=cellfun(@(x,y,z) x(ii)+y(ii)+z(ii),A,B,C)
Hi folks,
Adding the cell arrays of the same dimension works after. Thanks for your help.

类别

帮助中心File Exchange 中查找有关 Operators and Elementary Operations 的更多信息

标签

提问:

2013-10-23

回答:

2013-10-25

Community Treasure Hunt

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

Start Hunting!

Translated by