
matlab编程,有一个cell型的二维数组,如何编程实现查找数组内每个不相同元素,以及统计它们出现的次数
展开全部
你好!很高兴为你回答这个问题:
clc;clear all
a={[1,2,3,4,5],[3,2,4,33,5],[3,4,2,5,7],[32,3,5,4,32],[0,4,7,9,10]};%cell二维数组
size0=size(a);
b=[a{1:size0(1),1:size0(2)}]';
n=length(b);%数组长度
j=1;%j代表第j个不同的数,序号
k=ones(1,n);%k数组表示每一个数对应的个数,初始发现时就可以定为1
c(1)=b(1);%初始赋值
for i=2:n
if(ismember(b(i),c))%判断是否重复
m=find(c==b(i));
k(m)=k(m)+1;
else
j=j+1;
c(j)=b(i);
end
end
count=length(c);
fprintf(' 数值 数值对应个数\n')
disp([c(1:count)' k(1:count)'])%输出不同的数和它的个数
经过计算得到的截图如下:
希望我的回答对你有所帮助!!
满意敬请采纳哟!!O(∩_∩)O谢谢!
追问
谢谢你的回答。如果令a={[1,2],[1],[1,2,3];[1,3],[2],[1,2]}这样的cell矩阵,能不能把[1,2]作为一个整体,统计他出现的次数,其它的也是这样统计。非常感谢!
追答
当然可以的哟!![a{1}]、[a{2}]……这样
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询