adding same size cell arrays

6 ビュー (過去 30 日間)
Alnazer
Alnazer 2015 年 12 月 28 日
コメント済み: Greg Heath 2015 年 12 月 29 日
Assume I have a matrices C1,C2 as follows:
C1 = nx1 cell each cell is [5x5 double].
C2 = nx1 cell each cell is [5x5 double].
How to calculate C3 as:
C3{1,1} = C1{1,1}+C2{1,1};
C3{2,1} = C1{2,1}+C2{2,1};
.
.
C3{n,1} = C1{n,1}+C2{n,1};
using cellfun or any other method without looping

採用された回答

dpb
dpb 2015 年 12 月 28 日
cellfun(@plus,A,B,'uni',0)
cell2mat(A)+cell2mat(B)
  2 件のコメント
Alnazer
Alnazer 2015 年 12 月 28 日
Just to clarify; your answer provides two ways to solve the problem;
C3 = cellfun(@plus,A,B,'uni',0);
Result in C3 a cell array, while
C3 = cell2mat(A)+cell2mat(B);
Result in C3 as array type double.
am l right??
dpb
dpb 2015 年 12 月 28 日
Yes altho the latter is easily converted simply by enclosing in the curlies...
C3 = {cell2mat(A)+cell2mat(B)};
Which might have a performance advantage I've no idea...

サインインしてコメントする。

その他の回答 (1 件)

Sean de Wolski
Sean de Wolski 2015 年 12 月 28 日
If you have the neural networks toolbox:
gadd(A,B)
  1 件のコメント
Greg Heath
Greg Heath 2015 年 12 月 29 日
command line documentation
help gadd
doc gadd
See also gsubtract, gmultiply, gdivide, gnegate.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by