MATLAB 请问怎么找出一组数据(Nx2)中最常出现的一组呢

比如
A=
1 1
2 2
2 3
1 1
3 2
则答案是1 1
能找出不重复的组,然后得到每个组出现的次数吗?
比如
A=
1 1
2 2
2 3
1 1
3 2


B=
1 1 2 %[1 1]出现了两次
2 2 1
2 3 1
3 2 1

谢邀。
这个我不清楚有啥库函数能实现这个功能呢,所以只好自己写一个函数实现。
方法比较笨,仅供参考。

function B=myfun(A)
%矩阵B前两列为矩阵A中不重复元素,第三列为不重复的元素出现的次数。
%nargin等判断从略,默认A的输入格式为Nx2。
C=zeros(size(A,1),size(A,1));
%找出重复元素,C中第i行j列为1表示第i个元素与个j个元素相同
for i=1:size(A,1)
for j=1:size(A,1)
C(i,j)=isequal(A(i,:),A(j,:));
end
end
D=eye(size(A,1));
E=C-D;%减去i==j时导致的相同
a=max(max(A));
B=A;
for i=1:size(A,1)
for j=1:size(A,1)
if E(i,j)==1
B(j,:)=[a+1 a+1];%将重复元素改为比A中最大元素大1的数
E(j,i)=-1;
end
end
end
id=find(B(:,1)==a+1);
B(:,3)=sum(C)';
B(id,:)=[];%先添加第三列,即重复出现次数,再删除重复的列
end追问

谢答,我后来也搜索到了一个函数可以参考,谢谢回答!

来自:求助得到的回答
温馨提示:答案为网友推荐,仅供参考