如何用matlab从一列数据中找出重复次数最多的数据?

2024-12-29 19:07:57
推荐回答(4个)
回答1:

你用for 循环嵌套if....end 去读这一组数据中的每一个,每读一个数据,针对这个数据做一次计数,下面接着读,如果有和前面读的数据相等的,那么再在前面的计数变量上加1,以此类推直到把所有的数据读完!
然后你根据各个不同计数变量的大小以及对应的数据,就可以直到那个重复的最多

回答2:

 tabulate函数

用于统计矩阵中各元素出现的次数

>> x = [2  2  6  5  2  3  2  4  3  4  3  4  4  4  4  2  2
      6  0  4  7  2  5  8  3  1  3  2  5  3  6  2  3  5
      4  3  1  4  2  2  2  3  1  5  2  6  3  4  1  2  5];
>> tabulate(x(:))
  Value    Count   Percent
      0        1      1.96%
      1        4      7.84%
      2       14     27.45%
      3       10     19.61%
      4       10     19.61%
      5        6     11.76%
      6        4      7.84%
      7        1      1.96%
      8        1      1.96%

回答3:

运用tabulate函树,输入以下矩阵即可
>> x = [2 2 6 5 2 3 2 4 3 4 3 4 4 4 4 2 2
6 0 4 7 2 5 8 3 1 3 2 5 3 6 2 3 5
4 3 1 4 2 2 2 3 1 5 2 6 3 4 1 2 5];
>> tabulate(x(:))
Value Count Percent
0 1 1.96%
1 4 7.84%
2 14 27.45%
3 10 19.61%
4 10 19.61%
5 6 11.76%
6 4 7.84%
7 1 1.96%
8 1 1.96%
MATLAB是美国MathWorks公司出品的商业数学软件,用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境,主要包括MATLAB和Simulink两大部分。MATLAB应用非常之广泛。

回答4:

a=[1,3,3,5,5,6,2,6,9,9];
b=unique(a);
c=histc(a,b);