How can i solve this?

1 view (last 30 days)
Arturzzaman Rustam
Arturzzaman Rustam on 27 May 2020
Commented: David Hill on 27 May 2020
For a given rectangular matrix A, it is required to find the number of elements that exceed in absolute value the arithmetic mean of all elements of this matrix.
A=rand(3,4)
M=mean(mean(A))
A(:)
x=abs(M)
c=0
fori = length(ans)
if (ans(i)>abs(x))
c=c+1
end;
i did this. Is this even the solution of that question?im new to matlab

Accepted Answer

David Hill
David Hill on 27 May 2020
a=mean(abs(A),'all');
s=sum(A>a,'all');
  2 Comments
David Hill
David Hill on 27 May 2020
Or,
a=mean(abs(A),'all');
s=nnz(A>a);
David Hill
David Hill on 27 May 2020
Sorry, I misunderstood you. You want to take the mean first, then abs. Here is a one-liner that will work for you.
s=nnz(A>abs(mean(A,'all')));

Sign in to comment.

More Answers (0)

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!