groupcounts
群元数
语法
描述
表数据
数组的数据
例子
组表变量
根据表数据计算每一组的元素数量。
创建一个表T
其中包含8个人的信息。
健康状态=类别([“穷”;“好”;“公平”;“公平”;“穷”;“优秀”;“好”;“优秀”]);吸烟者=合乎逻辑的([1;0;0;1;1;0;0;1);权重= [176; 153; 131; 133; 119; 120; 140; 129]; T = table(HealthStatus,Smoker,Weight)
T =8×3表健康状况吸烟者体重____________ ____________差真176好假153中等假131中等真133差真119极好假120好假140极好真129
按健康状况将个体分组,并返回每组中的个体数量和百分比。
G1 = groupcounts(T,“HealthStatus”)
G1 =4×3表健康状态组计数百分比____________ __________ _______优秀2 25一般2 25良好2 25贫穷2 25
根据健康状况和吸烟者状况将个体分组,并返回每组的个体数量和百分比。默认情况下,groupcounts
抑制没有元素的组,因此不返回组变量值的某些惟一组合。
G2 = groupcounts(T,[“HealthStatus”,“抽烟”])
G2 =6×4表健康状况吸烟者分组计数百分比____________ ______ __________ _______优秀假1 12.5优秀真1 12.5一般假1 12.5一般真1 12.5良好假2 25较差真2 25
要为每个组(包括那些没有元素的组)返回一行,请指定IncludeEmptyGroups
作为真正的
.
G3 = groupcounts(T,[“HealthStatus”,“抽烟”),“IncludeEmptyGroups”,真正的)
G3 =8×4表健康状态吸烟者分组计数百分比____________ ______ __________ _______优秀假1 12.5优秀真1 12.5一般假1 12.5一般真1 12.5良好假2 25良好真0 0差假0 0差真2 25
指定分组箱
将数据按指定的箱子分组。
创建一个包含一个月内的销售信息的时间表。
TimeStamps = datetime([2017 3 4;2017 3 2;2017 3 15;2017 3 10;...2017 3 14;2017 3 31;2017 3 25;...2017 3 29;2017 3 21;2017 3 18]);利润= [2032 3071 1185 2587 1998 2899 3112 909 2619 3085]';ItemsSold = [14 13 8 5 10 16 8 6 7 11]';时间表(时间戳,利润,售出物品)
TT =10×2时间表时间戳利润项目出售___________ ______ _________ 04- 3 -2017 2032 14 02- 3 -2017 3071 13 15- 3 -2017 1185 8 10- 3 -2017 2587 5 14- 3 -2017 1998 10 31- 3 -2017 2899 16 25- 3 -2017 3112 8 29- 3 -2017 909 6 21- 2017 2619 7 18- 3 -2017 3085 11
根据销售的总商品计算组计数,将组分成商品编号的间隔。
G = groupcounts(TT,“ItemsSold”,[0 4 8 12 16])
G =3×3表disc_ItemsSold GroupCount百分比 ______________ __________ _______ [ 4, 8) 3 30[8、12)4 30 40(12、16)3
计算分组计数按天分类。
G = groupcounts(TT,“时间戳”,“dayname”)
G =5×3表dayname_TimeStamps GroupCount Percent __________________ _________________星期二2 20星期三2 20星期四1 10星期五2 20星期六3 30
查找重复的数组元素
确定向量中哪些元素出现多次。
创建一个值在1到5之间的列向量。
A = [1 1 2 2 3 5 3 3 1 4]';
确定向量中唯一的组并计数组成员。
[B,BG] = groupcounts(A)
B =5×13 2 3 1 1
BG =5×11 2 3 4 5
通过为计数大于1的组创建逻辑索引,确定向量中哪些元素出现多次。索引到组中以返回重复的向量元素。
副本= BG(B > 1)
重复的=3×11 2 3
向量输入的多重分组向量
计算根据健康状况和吸烟状况分组的一组人的分组计数。
将关于八个个体的信息存储为三个不同类型的向量。
健康状态=类别([“穷”;“好”;“公平”;“公平”;“穷”;“优秀”;“好”;“优秀”]);吸烟者=合乎逻辑的([1;0;0;1;1;0;0;1);权重= [176; 153; 131; 133; 119; 120; 140; 129];
按健康状况和吸烟者状况分组,计算分组计数。指定三个输出也返回组BG
群体计数百分比英国石油公司
.
BG
是包含两个向量的单元格数组,它们在按行查看组的元素时描述组。例如,第一行BG {1}
表示第一组中的个人具有健康状态优秀的
的第一行BG {2}
表示他们不吸烟。最后,英国石油公司
包含每个组中对应组的成员的百分比BG
.
[B,BG,BP] = groupcounts({健康状态,吸烟者},“IncludeEmptyGroups”,真正的);B
B =8×11 1 1 1 2 0 0 2
BG {1}
ans =8 x1分类好,好,好,好,好,可怜,可怜
BG {2}
ans =8x1逻辑阵列0 1 0 1 0 1 1
英国石油公司
英国石油(BP) =8×112.5000 12.5000 12.5000 12.5000 25.0000 00 25.0000
输入参数
T
- - - - - -输入表
表格|时间表
输入表格,指定为表格或时间表。
一个
- - - - - -输入数组
列向量|矩阵|单元阵列
输入数组,指定为列向量、存储为矩阵的列向量组、列向量、字符行向量或矩阵的单元格数组。
groupvars
- - - - - -对变量或向量进行分组
标量|向量|矩阵|单元阵列|函数处理|表格vartype
下标
对变量或向量进行分组,指定为该表中的选项之一。对于表或时间表输入数据,groupvars
指示要使用哪些变量来计算数据中的组。未指定的其他变量groupvars
不被操作,也不传递到输出。
选项 | 描述 | 例子 |
---|---|---|
变量名 | 指定单个表变量名的字符向量或字符串标量 |
|
变量名的向量 | 字符向量或字符串数组的单元格数组,其中每个元素都是表变量名 |
|
可变指标的标量或向量 | 表变量索引的标量或向量 |
|
逻辑向量 | 一个逻辑向量,其每个元素都对应一个表变量,其中 |
|
函数处理 | 接受表变量作为输入并返回逻辑标量的函数句柄 |
|
vartype 下标 |
方法生成的表下标 |
|
例子:groupcounts (T,“Var3”)
groupbins
- - - - - -装箱计划
“没有”
(默认)|标量|向量|单元阵列
bin方案,指定为以下选项之一:
“没有”
,表示没有装箱二进制边的列表,指定为数值向量或
datetime
向量为datetime
对变量或向量进行分组多个容器,指定为正整数标量
时间持续时间,指定为类型的标量
持续时间
或calendarDuration
指示料仓宽度(用于datetime
或持续时间
仅对变量或向量进行分组)列出每个分组变量或向量的分组方法的单元格数组
时间箱
datetime
而且持续时间
仅对变量或向量进行分组,指定为这些字符串之一。价值 描述 数据类型 “第二”
每个箱子是1秒。
datetime
而且持续时间
“一分钟”
每箱1分钟。
datetime
而且持续时间
“小时”
每箱1小时。
datetime
而且持续时间
“天”
每个垃圾桶是1个日历日。该值用于日光节约时间的转换。
datetime
而且持续时间
“周”
每个垃圾桶是一个日历周。 datetime
只有“月”
每个垃圾桶是一个日历月。 datetime
只有“季”
每个垃圾箱是一个日历季度。 datetime
只有“年”
每个垃圾箱是一个日历年。这个值表示闰日。
datetime
而且持续时间
“十年”
每个垃圾箱是10年(10个日历年)。 datetime
只有“世纪”
每个箱子代表一个世纪(100历年)。 datetime
只有“secondofminute”
垃圾箱是0到59秒。
datetime
只有“minuteofhour”
垃圾箱是从0到59分。
datetime
只有“hourofday”
垃圾箱的时间是从0点到23点。
datetime
只有“dayofweek”
垃圾箱是从1日到7日。一周的第一天是星期天。
datetime
只有“dayname”
箱子是完整的日名,比如 “星期天”
.datetime
只有“dayofmonth”
垃圾箱的天数是从1日到31日。 datetime
只有“dayofyear”
垃圾箱的天数是从1到366。 datetime
只有“weekofmonth”
垃圾箱是从1到6周。 datetime
只有“weekofyear”
垃圾箱是从1周到54周。 datetime
只有“monthname”
箱子是完整的月份名称,例如 “1月”
.datetime
只有“monthofyear”
垃圾箱是从1到12个月。
datetime
只有“quarterofyear”
垃圾箱是1到4的四分之一。 datetime
只有
当指定多个分组变量或向量时,可以提供应用于所有分组变量或向量的单个分组方法,或者提供包含每个分组变量或向量的分组方法的单元格数组,例如{"none",[0 2 4 Inf]}
.
名称-值参数
指定可选参数对为Name1 = Value1,…,以=家
,在那里的名字
参数名称和价值
对应的值。名-值参数必须出现在其他参数之后,但对的顺序并不重要。
例子:G = groupcounts(T,groupvars,groupbins, includedge ="right")
在R2021a之前,名称和值之间用逗号隔开,并括起来的名字
在报价。
例子:G = groupcounts(T,groupvars,groupbins," includedge ","right")
IncludedEdge
- - - - - -包括料仓边缘
“左”
(默认)|“正确”
包含bin边,指定为任意“左”
或“正确”
,表示包含bin间隔的哪一端。
此名称-值参数仅在groupbins
,该值应用于所有分组变量或向量的所有分组方案。
IncludeMissingGroups
- - - - - -缺组指标
真正的
或1
(默认)|假
或0
丢失组指示符,指定为数字或逻辑1
(真正的
)或0
(假
).的值IncludeMissingGroups
是真正的
,groupcounts
显示由缺失值组成的组,例如南
.的值IncludeMissingGroups
是假
,groupcounts
不显示缺失的值组。
IncludeEmptyGroups
- - - - - -空组指示器
假
或0
(默认)|真正的
或1
空组指示符,指定为数字或逻辑0
(假
)或1
(真正的
).的值IncludeEmptyGroups
是假
,groupcounts
不显示包含零元素的组。的值IncludeEmptyGroups
是真正的
,groupcounts
显示空组。
输出参数
G
-输出表
表格
输出表用于表或时间表输入数据,作为表返回。G
包含计算的组、每个组中的元素数量以及由每个组计数表示的百分比。类返回的顺序对单个分组变量进行排序独特的
函数“排序”
选择。
B
-组数
列向量
组计数数组输入数据,作为列向量返回。B
包含每个组中元素的数量。
BG
——组
列向量|单元格数组的列向量
组用于数组输入数据,作为列向量或列向量的单元格数组返回。类返回的顺序对单个分组向量进行排序独特的
函数“排序”
选择。
对于多个输入向量,BG
包含长度相等的列向量的单元格数组。中所有向量的一行元素中包含每个组的信息BG
.每个组映射到输出数组的对应行B
.
英国石油公司
-组计数百分比
列向量
数组输入数据的组计数百分比,作为列向量返回。英国石油公司
包含范围内的百分比[0, 100)
对于每一组B
.
提示
打了很多电话
groupcounts
,考虑将分组变量转换为类型分类
或逻辑
在可能的情况下提高性能。例如,如果您有一个字符串数组分组变量(例如HealthStatus
与元素“穷”
,“公平”
,“好”
,“优秀”
),您可以使用该命令将其转换为分类变量分类(HealthStatus)
.
扩展功能
高大的数组
使用行数超过内存容量的数组进行计算。
使用注意事项和限制:
第一个输入参数不支持单元格数组。
的
groupvars
参数不支持函数句柄。的
IncludeEmptyGroups
不支持名称-值参数。组的顺序可能与内存中的顺序不同
groupcounts
计算。当按离散日期时间数组分组时,类别组名与内存中的组名不同
groupcounts
计算。
有关更多信息,请参见高大的数组.
C/ c++代码生成
使用MATLAB®Coder™生成C和c++代码。
使用注意事项和限制:
除输入数据外的所有输入参数都必须是常量。
不支持稀疏输入。
对datetime或duration数据不支持bin模式。
如果组变量的数量可以在运行时更改,则第二个输出
BG
是单元格数组。
线程环境
在后台使用MATLAB®运行代码backgroundPool
或使用并行计算工具箱™加速代码ThreadPool
.
这个函数完全支持基于线程的环境。有关更多信息,请参见在线程环境中运行MATLAB函数.
版本历史
在R2019a中引入R2022a:代码生成支持
的C或c++代码groupcounts
函数。有关使用说明和限制,请参见C/ c++代码生成.
R2021a:自动包含在表格
输出
当groupcounts
操作表或时间表中的数据,输出包含用于百分比的附加表变量。百分比在这个范围内[0, 100)
和包含在表变量中百分比
.
任何引用特定表变量的代码都不受影响。但是,您可能需要更新依赖于输出表中变量数量的代码。
另请参阅
功能
实时编辑任务
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。
您也可以从以下列表中选择网站:
如何获得最佳的网站性能
选择中国网站(中文或英文)以获得最佳的网站表现。其他MathWorks国家网站没有针对从您的位置访问进行优化。