MATLAB: Averaging positive and negative values seperately for each array in a matrix

averagingmeanpositive and negative values

Hi all,
I have a 40X1000 matrix and I want to average positive and negative values seperately for each array.
Lets say A=[0 2 2 -1 -7; 0 -1 -3 -2 6], I want an output file like output=[4 -4; 6 -2].
Does any of you know how to solve this ?
Many thanks

Best Answer

pos=A>0;
neg=A<0;
output=[sum(A.*pos,2)./sum(pos,2) , sum(A.*neg,2)./sum(neg,2)]