How can I use plus operation with more than 2 array

조회 수: 3 (최근 30일)
Wongnarin Kompor
Wongnarin Kompor 2016년 2월 1일
댓글: David Young 2016년 2월 3일
I try to plus with many array. For example plus(A,B,C,D,...Z) with A = [1,2,3:4,1,2] B = [3,5,6,:5,6,7] and so on and I've got this message
"??? Error using ==> plus Too many input arguments."
How can I solve this? Thank you in advance for your answer
  댓글 수: 2
Stephen23
Stephen23 2016년 2월 1일
plus is a binary operator, the documentation shows this and does not state otherwise. You will need to perform it multiple times.
Wongnarin Kompor
Wongnarin Kompor 2016년 2월 2일
Thank you for suggest me

댓글을 달려면 로그인하십시오.

채택된 답변

Walter Roberson
Walter Roberson 2016년 2월 1일
There is no way of doing that in MATLAB: you need to do a series of binary plus operations, A+B+C+....
You may wish to consider:
nd = ndims(A);
sum( cat(nd+1, A, B, C, .... Z), nd+1 )
Note: this code will not work if any of the elements are scalars, unless they are all scalars. All of the matrices need to be the same size for this code to work.
  댓글 수: 2
Wongnarin Kompor
Wongnarin Kompor 2016년 2월 2일
Thank you very much
David Young
David Young 2016년 2월 3일
If the arrays are large, this makes extravagant use of memory.

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

David Young
David Young 2016년 2월 1일
Either use
A + B + C + D + Z
or
plus(A, plus(B, plus(C, plus(D, Z))))

카테고리

Help CenterFile Exchange에서 Logical에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by