matlab中用于统计矩阵数据频率,出现次数的函数
2012-06-28 19:35
585 查看
原帖请看此处:http://www.ilovematlab.cn/thread-67367-1-1.html
第一种方法:调用MATLAB自带的函数tabulate统计一个数组中各数字(元素)出现的频数、频率
【例1】统计数值型数组中各元素出现的频数、频率
【例2】统计字符串中各字符出现的频数、频率。
>> x = ['If x is a numeric array, TABLE is a numeric matrix.']';
>> tabulate(x)
Value Count Percent
I 1 2.44%
f 1 2.44%
x 2 4.88%
i 5 12.20%
s 2 4.88%
a 5 12.20%
n 2 4.88%
u 2 4.88%
m 3 7.32%
e 2 4.88%
r 5 12.20%
c 2 4.88%
y 1 2.44%
, 1 2.44%
T 1 2.44%
A 1 2.44%
B 1 2.44%
L 1 2.44%
E 1 2.44%
t 1 2.44%
. 1 2.44%
【例3】统计字符型数组中各行元素出现的频数、频率。
>>
x = ['崔家峰';'孙乃喆';'安立群';'王洪武';'王玉杰';'高纯静';'崔家峰';
'叶 鹏';'关泽满';'谢中华';'王宏志';'孙乃喆';'崔家峰';'谢中华'];
>> tabulate(x)
Value Count Percent
崔家峰 3 21.43%
孙乃喆 2 14.29%
安立群 1 7.14%
王洪武 1 7.14%
王玉杰 1 7.14%
高纯静 1 7.14%
叶 鹏 1 7.14%
关泽满 1 7.14%
谢中华 2 14.29%
王宏志 1 7.14%
【例4】统计字符串元胞数组中各字符串出现的频数、频率。
>> x = {'崔家峰';'孙乃喆';'安立群';'王洪武';'王玉杰';'高纯静';'崔家峰';
'叶鹏';'关泽满';'谢中华';'王宏志';'孙乃喆';'崔家峰';'谢中华'};
>> tabulate(x)
Value Count Percent
崔家峰 3 21.43%
孙乃喆 2 14.29%
安立群 1 7.14%
王洪武 1 7.14%
王玉杰 1 7.14%
高纯静 1 7.14%
叶鹏 1 7.14%
关泽满 1 7.14%
谢中华 2 14.29%
王宏志 1 7.14%
【例5】统计名义尺度(如性别,职业,产品型号等)数组中各元素出现的频数、频率。
>> load fisheriris
>> species = nominal(species);
>> tabulate(species)
Value Count Percent
setosa 50 33.33%
versicolor 50 33.33%
virginica 50 33.33%
另外,可以使用hist来统计vector中各个变量出现的次数
hist应该是可以的,你试试
比如说
x=1:10;
>> y=1:10;
>> [m,n]=hist(y,x)
m =
1 1 1 1 1 1 1 1 1 1
n =
1 2 3 4 5 6 7 8 9 10
m是对应的出现的次数,n是对应的量
第一种方法:调用MATLAB自带的函数tabulate统计一个数组中各数字(元素)出现的频数、频率
【例1】统计数值型数组中各元素出现的频数、频率
>> 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%
【例2】统计字符串中各字符出现的频数、频率。
>> x = ['If x is a numeric array, TABLE is a numeric matrix.']';
>> tabulate(x)
Value Count Percent
I 1 2.44%
f 1 2.44%
x 2 4.88%
i 5 12.20%
s 2 4.88%
a 5 12.20%
n 2 4.88%
u 2 4.88%
m 3 7.32%
e 2 4.88%
r 5 12.20%
c 2 4.88%
y 1 2.44%
, 1 2.44%
T 1 2.44%
A 1 2.44%
B 1 2.44%
L 1 2.44%
E 1 2.44%
t 1 2.44%
. 1 2.44%
【例3】统计字符型数组中各行元素出现的频数、频率。
>>
x = ['崔家峰';'孙乃喆';'安立群';'王洪武';'王玉杰';'高纯静';'崔家峰';
'叶 鹏';'关泽满';'谢中华';'王宏志';'孙乃喆';'崔家峰';'谢中华'];
>> tabulate(x)
Value Count Percent
崔家峰 3 21.43%
孙乃喆 2 14.29%
安立群 1 7.14%
王洪武 1 7.14%
王玉杰 1 7.14%
高纯静 1 7.14%
叶 鹏 1 7.14%
关泽满 1 7.14%
谢中华 2 14.29%
王宏志 1 7.14%
【例4】统计字符串元胞数组中各字符串出现的频数、频率。
>> x = {'崔家峰';'孙乃喆';'安立群';'王洪武';'王玉杰';'高纯静';'崔家峰';
'叶鹏';'关泽满';'谢中华';'王宏志';'孙乃喆';'崔家峰';'谢中华'};
>> tabulate(x)
Value Count Percent
崔家峰 3 21.43%
孙乃喆 2 14.29%
安立群 1 7.14%
王洪武 1 7.14%
王玉杰 1 7.14%
高纯静 1 7.14%
叶鹏 1 7.14%
关泽满 1 7.14%
谢中华 2 14.29%
王宏志 1 7.14%
【例5】统计名义尺度(如性别,职业,产品型号等)数组中各元素出现的频数、频率。
>> load fisheriris
>> species = nominal(species);
>> tabulate(species)
Value Count Percent
setosa 50 33.33%
versicolor 50 33.33%
virginica 50 33.33%
另外,可以使用hist来统计vector中各个变量出现的次数
hist应该是可以的,你试试
比如说
x=1:10;
>> y=1:10;
>> [m,n]=hist(y,x)
m =
1 1 1 1 1 1 1 1 1 1
n =
1 2 3 4 5 6 7 8 9 10
m是对应的出现的次数,n是对应的量
相关文章推荐
- Oracle 函数 Translate 的用法 (可用于统计 某字符 在字符串中 出现的次数)
- Matlab统计矩阵内各值出现次数以及所占比例
- 自己写的javascript map 函数, 用于统计字符出现次数
- matlab如何统计矩阵各元素的出现次数
- 从txt文件逐行读取数据到excel文件(包含POI的简单使用和excel文件的数据分列,出现次数统计)
- php 数组函数统计数组中,各个值出现的次数
- 统计同一数据在同一文件中出现的次数
- 可统计任一整数中某个位数出现的次数。例如-21252中,2出现了3次,则该函数应该返回3。
- 编写函数void count(char a[],char w[][10],int n,int b[])。功能是:统计w指向的数组中的n个单词在a指向的字符串中各自出现的次数(将非字母字符看作单词分
- 一个一维整形数组,若干个数字,统计数组中不同的数字出现的次数,并按照出现频率从小到大排序输出,相同频率按数字大小排序输出
- 学python(04)——统计列表中所有数据出现的次数
- 对于给定的一个字符串,统计其中数字字符出现的次数。输入数据有多行,第一行是一个整数n,表示测试实例的个数,后面跟着n行,每行包括一个由字母和数字组成的字符串。
- php数组函数序列 之array_count_values() 统计数组中所有值出现的次数函数
- Linux作业(三)-shell统计某文章中出现频率最高的N个单词并排序输出出现次数
- 统计出现次数最多的数据
- Sql统计一个字符串在另一个字符串出现的次数的函数-fnQueryCharCountFromString
- 统计一篇英文文章内每个单词出现频率,并返回出现频率最高的前10个单词及其出现次数
- 如何读取CSV文件,格式化数据,统计生日出现的次数
- 将文件input.bin中的数据按字节(无符号数值)统计,输出每个数值在文件中出现的次数
- 统计同一数据在同一文件中出现的次数