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 件のコメント

Azzi Abdelmalek
Azzi Abdelmalek 2013 年 10 月 23 日
The ith element of cell A is a 18x9 array, is it right?
bugatti79
bugatti79 2013 年 10 月 23 日
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 件)

Azzi Abdelmalek
Azzi Abdelmalek 2013 年 10 月 23 日
編集済み: Azzi Abdelmalek 2013 年 10 月 23 日

0 投票

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)
Jos (10584)
Jos (10584) 2013 年 10 月 23 日

0 投票

D = cell(size(A)) ;
for k=1:numel(A),
D{k} = A{k}+B{k}+C{k} ;
end
bugatti79
bugatti79 2013 年 10 月 25 日

0 投票

Hi folks,
Adding the cell arrays of the same dimension works after. Thanks for your help.

カテゴリ

ヘルプ センター および File ExchangeOperators 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