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

1 次查看(过去 30 天)
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;

类别

Help CenterFile Exchange 中查找有关 Elementary Math 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by