MATLAB统计工具箱中提供了tabulate函数,用来统计一个数组中各数字(元素)出现的频数、频率。调用格式如下:

(1)TABLE=tabulate(x)

生成样本观测数据x的频数和频率分布表。输入参数x可以是数值型数组、字符串、字符型数组、字符串元胞数组和名义尺度数组。参数TABLE是包含3列的数组,其第一列是x中不重复的元素,第二列是这些元素出现的频数,第三列是这些元素出现的频率。当x是数值型数组时,TABLE是数值型矩阵;当x是字符串、字符型数组、字符串元胞数组和名义尺度(categorical)数组时,TABLE是元胞数组。

(2)tabulate(x)

直接在MATLAB命令窗口显示样本观测数据x的频数和频率分布表。此时没有输出变量。

Tabulate:直接在MATLAB命令窗口显示样本观测数据x的频数和频率分布表。此时没有输出变量。不仅统计数字的频数频率,还可以统计字符出现的频数和频率。

例1:统计数值型数组中各元素出现的频数、频率。

clear;clc

x=[2 4 3 1 4 6 8 7 4 3 6 3 2 4 6 3 6 5 7 6 3 2 5 7 ];

tabulate(x)

结果:

matlab如何设置波形数(MATLAB基础学习之频数和频率分布表)(1)

例2:统计字符串中各字符出现的频数、频率。

y=['If x is a numeric array, TABLE is a numeric matrix.']';

tabulate(y)

注意此处字符串矩阵后面有转置符号,区别数字矩阵。

结果:

matlab如何设置波形数(MATLAB基础学习之频数和频率分布表)(2)

例:统计字符型数组中各元素出现的频数和频率

clear;clc

x=['崔家峰';'孙乃喆';'安立群';'王洪武';'王玉杰';'高纯静';'崔家峰';'叶 鹏';'关泽满';'谢中华';'王宏志';'孙乃喆';'崔家峰';'谢中华'];

tabulate(x)

结果:

Value Count Percent

matlab如何设置波形数(MATLAB基础学习之频数和频率分布表)(3)

例:统计字符串元胞数组中各字符串出现的频数和频率。

clear;clc

x={'崔家峰';'孙乃喆';'安立群';'王洪武';'王玉杰';'高纯静';'崔家峰';'叶 鹏';'关泽满';'谢中华';'王宏志';'孙乃喆';'崔家峰';'谢中华'};

tabulate(x)

结果:

matlab如何设置波形数(MATLAB基础学习之频数和频率分布表)(4)

,