How do I know the frequency of each unique pair?

Edited by Azzi after Shounak changed his question
I have a uint8 matrix nx2, I want to know the frequency of each unique pair

2 Comments

Why did you change your question?
I thought i was not clear, so I explained the problem

Sign in to comment.

Answers (2)

A=uint8([1 2;3 4;1 2;5 6;1 2;5 6])
[ii,jj,kk]=unique(A,'rows')
f=histc(kk,1:numel(jj)) %frequencies
out=[ii f] ; % the first two columns represent ii, the third represent the frequency
Here's a one-liner that works if the input is of a N-by-2 matrix with positive integers:
A=uint8([1 2; 3 4;1 2;5 6;1 2;5 6 ; 255 254 ; 255 254])
[B(:,1) B(:,2) B(:,3)] = find(accumarray(A,1)) ;
disp(B) % column 1-2, unique rows of A, column 3 is frequency of occurrence

Asked:

on 30 Mar 2014

Answered:

on 30 Mar 2014

Community Treasure Hunt

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

Start Hunting!