Adding three cells element wise using cellfun

7 Ansichten (letzte 30 Tage)
bugatti79
bugatti79 am 23 Okt. 2013
Beantwortet: bugatti79 am 25 Okt. 2013
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 Kommentare
Azzi Abdelmalek
Azzi Abdelmalek am 23 Okt. 2013
The ith element of cell A is a 18x9 array, is it right?
bugatti79
bugatti79 am 23 Okt. 2013
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.

Melden Sie sich an, um zu kommentieren.

Antworten (3)

Azzi Abdelmalek
Azzi Abdelmalek am 23 Okt. 2013
Bearbeitet: Azzi Abdelmalek am 23 Okt. 2013
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) am 23 Okt. 2013
D = cell(size(A)) ;
for k=1:numel(A),
D{k} = A{k}+B{k}+C{k} ;
end

bugatti79
bugatti79 am 25 Okt. 2013
Hi folks,
Adding the cell arrays of the same dimension works after. Thanks for your help.

Kategorien

Mehr zu Cell Arrays finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by