Difference between columns, fixed the first column, in a matrix

Hi, I have a 3D-matrix and I want to calculate differences between columns, fixed the first column, and the value be positive or zero, i.e., for each 3D dimension calculate: max ( column(i)-column(1), 0 ). For example:
Thank you in advance!

 채택된 답변

Adam
Adam 2017년 11월 3일
편집: Adam 2017년 11월 3일
res = max( 0, A(:,2:end,:) - A(:,1,:) );
Note: This syntax only works from R2016b. For older syntax see Andrei Bobrov's answer

추가 답변 (1개)

Andrei Bobrov
Andrei Bobrov 2017년 11월 3일
편집: Andrei Bobrov 2017년 11월 3일
B = bsxfun(@minus,A(:,2:end,:),A(:,1,:));
B(B<0) = 0;

카테고리

도움말 센터File Exchange에서 Creating and Concatenating Matrices에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by