EDA365电子论坛网
标题:
请问MATLAB怎样统计数组中相同元素的个数?
[打印本页]
作者:
Touuqu
时间:
2020-4-1 10:31
标题:
请问MATLAB怎样统计数组中相同元素的个数?
假如有一个数组A,其中包括10个1,20个3,40个5,那么B= unique(A),之后,B=[1 3 5],想请教下:有没有一个函数能够统计出A中1、3、5的个数,当然这个写几行代码是可以的,但是MATLAB有unique这样的函数,肯定也想到了不但返回B这个数组,还返回他们的个数,谢谢!
' a3 `) y( v$ Q; u- T
% }2 Y1 q z9 o" l
作者:
yin123
时间:
2020-4-1 17:39
可以用for循环写一个:
% a1 U9 Y/ u6 r0 F* \. b
c=zeros(size(B));
2 L$ e, f! @# z: F
for i=1:length(B)
: H* g6 |; L) A% w
c(i)=sum(find(A==B(i)));
/ p" v& G! A5 G+ L) a
end
作者:
CCxiaom
时间:
2020-4-1 17:39
假定要分析的矩阵为data,
8 t% Z" M0 }6 B- [( I! B" V' d
) ?# i3 S& ^1 Z" f
x=data(: )
9 e0 k- w$ J/ `
x=sort(x);
2 Y! L5 e* u+ v4 d
d=diff([x;max(x)+1]);
/ [8 \8 W# p/ v/ W# i6 i
count = diff(find([1;d])) ;
- Y9 ^ R+ m9 }0 L7 v& e8 C! |
y =[x(find(d)) count]
4 k: h: Y/ Y: t) q; M
* G, u9 ~1 ?9 }
最后输出的y(1)为元素值,y(2)为所对应的元素值在此矩阵中的出现的次数
欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/)
Powered by Discuz! X3.2