主要内容

模式

数组中最频繁的值

描述

例子

=模式(一个的采样模式一个中出现频率最高的值一个.当多个值同样频繁地出现时,模式返回这些值中的最小值。对于复杂输入,最小的值是排序列表中的第一个值。

  • 如果一个是向量吗模式(一)的最频繁值一个

  • 如果一个是一个非空矩阵吗模式(一)的每列的模式返回行向量一个

  • 如果一个是一个空的0 × 0矩阵,模式(一)返回

  • 如果一个那么它是多维数组吗模式(一)处理第一个数组维度上大小不相等的值1作为向量,并返回最频繁值的数组。这个维度的大小变得1而所有其他维度的尺寸保持不变。

例子

=模式(一个“所有”的所有元素的模式一个.这个语法对MATLAB是有效的®R2018b及更高版本。

例子

=模式(一个昏暗的沿维度返回元素的模式昏暗的.例如,如果一个是矩阵吗模式(2)列向量是否包含每行最频繁的值

例子

=模式(一个vecdim根据向量中指定的维度计算模式vecdim.例如,如果一个是矩阵吗模式(A [1 - 2])所有元素的模式都在吗一个,因为矩阵的每个元素都包含在由维1和维2定义的数组切片中。

例子

F= mode(模式)___还返回一个频率数组F,使用前面语法中的任何输入参数。F是一样的尺寸吗的每个元素F的对应元素的出现次数

例子

FC= mode(模式)___也返回单元格数组C大小相同的而且F.的每个元素C的对应元素的频率相同的所有值的排序向量

例子

全部折叠

定义一个3 × 4矩阵。

A = [3 3 1 4;0 0 1 1;0 1 2 4]
一个=3×43 3 1 4 0 0 1 1 0 1 2 4

找出每一列最频繁的值。

M =模态(A)
M =1×40 0 1 4

定义一个3 × 4矩阵。

A = [3 3 1 4;0 0 1 1;0 1 2 4]
一个=3×43 3 1 4 0 0 1 1 0 1 2 4

找出每一行最频繁的值。

M =模(A,2)
M =3×13 0 0

创建一个1 × 3 × 4的整数数组1而且10

rng (“默认”) A = randi(10,[1,3,4])
= (:: 1) = 9 10 2 (:,: 2) = 10 7 1 (:,:, 3) = 3 6 10 (:,:, 4) = 10 2

找出这个三维数组在第二个维度上最频繁的值。

M =模态(A)
M = M(:: 1) = 2米(:,:2)= 1米(:,:,3)= 3 M (:,:, 4) = 10

该操作通过查找沿第二个维度最频繁的值生成1 × 1 × 4数组。第二次元的大小减少到1

的第一维计算模态一个

M =模(A,1);isequal (A, M)
ans =逻辑1

返回与。相同的数组一个因为第一个维度的大小是1

创建一个3-D数组并计算每一页数据(行和列)的模式。

A(:,:,1) = [2 4;2 1];A(:,:,2) = [6 2;3 3];A(:,:,3) = [4 4;7 4];M1 =模式(A,[1 2])
M1 = M1(:,:,1) = 2 M1(:,:,2) = 3 M1(:,:,3) = 4

从R2018b开始,要计算数组所有维度的模式,可以在向量维度参数中指定每个维度,或者使用“所有”选择。

M2 =模式(A,[1 2 3])
M2 = 4
Mall = mode(模式)“所有”
Mall = 4

定义一个3 × 4矩阵。

A = [3 3 1 4;0 0 1 1;0 1 2 4]
一个=3×43 3 1 4 0 0 1 1 0 1 2 4

找出每一列最频繁的值,以及它出现的频率。

[M,F] =模式(A)
M =1×40 0 1 4
F =1×42 1 2 2

F (1)2(1)在第一列中出现两次。

定义一个3 × 4矩阵。

A = [3 3 1 4;0 0 1 1;0 1 2 4]
一个=3×43 3 1 4 0 0 1 1 0 1 2 4

找出每一行中出现频率最高的值,它出现的频率,以及该行中出现频率相同的值。

[M,F,C] =模式(A,2)
M =3×13 0 0
F =3×12 2 1
C =3×1单元格数组{[3]} {2x1 double} {4x1 double}

C {2}是2 × 1向量吗[0, 1]因为价值观0而且1在第二行中出现的频率F (2)

C {3}是4 × 1向量吗(0, 1, 2, 4)因为第三行中的所有值都有出现频率F (3)

定义一个16位无符号整数的1 × 4向量。

rng (“默认”) A = randi(10,[1,4],“uint16”
一个=1x4 uint16行向量9 10 2 10

找出最频繁的值,以及它出现的次数。

[M,F] =模式(A)
M =uint1610
F = 2
类(米)
Ans = 'uint16'

和输入是同一个类,一个

输入参数

全部折叠

输入数组,指定为向量、矩阵或多维数组。一个可以是数字数组、类别数组、日期时间数组或持续时间数组。

NaT(不是Time)输入数组中的值,一个,被忽略。类别数组中的未定义值类似于S在数值数组中。

要操作的维度,指定为正整数标量。如果没有指定值,则默认为大小不等于1的第一个数组维度。

昏暗的表示长度缩减为1.的大小(M,昏暗的)1,而所有其他维度的大小保持不变。

考虑一个二维输入数组,一个

  • 如果Dim = 1,然后模式(1)返回包含每列中最频繁值的行向量。

  • 如果Dim = 2,然后模式(2)返回列向量,其中包含每行中出现频率最高的值。

模式返回一个如果昏暗的大于ndims (A)

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

维数的向量,指定为正整数的向量。每个元素表示输入数组的一个维度。规定操作尺寸的输出长度为1,其他尺寸不变。

考虑一个2 × 3 × 3的输入数组,一个.然后模式(A [1 - 2])返回一个1 × 1 × 3的数组,其元素是的每一页的模式一个

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

输出参数

全部折叠

作为标量、向量、矩阵或多维数组返回的最常见值。当多个值同样频繁地出现时,模式返回这些值中的最小值。对于复杂输入,这将被视为已排序值列表中的第一个值。

的班级与输入数组的类相同,一个

频率数组作为标量、向量、矩阵或多维数组返回。的大小F的尺寸是一样的吗的每个元素F的对应元素的出现次数

的班级F总是

最频繁的具有多重性的值作为单元格数组返回。的大小C的尺寸是一样的吗而且F的每个元素C的对应元素的频率相同的所有值的排序列向量

提示

  • 模式函数对于离散或粗略舍入的数据最有用。连续概率分布的模态定义为其密度函数的峰值。应用模式从该分布函数到样本的函数不太可能提供对峰值的良好估计;最好是计算一个直方图或密度估计,并计算估计的峰值。此外,模式函数不适合于在具有多模态的分布中寻找峰值。

扩展功能

R2006a之前介绍过