How can i sum cells that equals in matrix

if i have a matrix like that
2 2 2 2
1 1 1 1
0 0 1 0
how can i calculate the sum of rows that the values in all of their columns are equals.
for this example i want it will return 2

Answers (2)

You can also use the 'all' function:
sum(all(diff(a,1,2)==0))

1 Comment

It might not matter at all, but I would like to point out that this is about twice as fast as my answer (at least on my machine on R2017b and R2012b).

Sign in to comment.

a=[2 2 2 2
1 1 1 1
0 0 1 0];
sum(sum(abs(diff(a,1,2)),2)==0)

Categories

Asked:

on 9 Jan 2018

Commented:

Rik
on 9 Jan 2018

Community Treasure Hunt

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

Start Hunting!