主要内容

findgroups

查找组和返回组号

描述

示例

G= findgroups(一种回报G,从分组变量创建的组编号的向量一种。输出参数G包含整数值从1到N,表明N不同群体的N在唯一值一种。例如,如果一种{ 'B', 'A', 'A', 'B'}, 然后findgroups回报G作为[2 1 1 2]。您可以使用G数据的拆分组出的其他变量。用G作为输入参数,以splitapply分体式应用组合工作流程

findgroups对待空字符向量和的NaT和未定义分类值在一种作为缺失的值和返回作为对相应的元件G

示例

G= findgroups(A1,...,AN)从创建组号码A1,...,AN。当findgroups功能基团定义为值跨越唯一组合A1,...,AN。例如,如果A1{ '一个', 'A', 'B', 'B'}A2[0 1 0 0], 然后findgroups(A1,A2)回报G作为[1 2 3 3],因为该组合'B' 0发生了两次。

示例

[GID] = findgroups(一种还返回每个组的唯一值ID。例如,如果一种{ 'B', 'A', 'A', 'B'}, 然后findgroups回报G作为[2 1 1 2]ID作为{ 'A', 'B'}。论点一种ID是相同的数据类型,但不需要与大小相同。

示例

[G,ID1,...,IDN] = findgroups(A1,...,AN)也返回唯一值的每个组跨越ID1,...,IDN。跨值ID1,...,IDN定义组。例如,如果A1{ '一个', 'A', 'B', 'B'}A2[0 1 0 0], 然后findgroups(A1,A2)回报G作为[1 2 3 3], 和ID1ID2作为{ '一个', 'A', 'B'}[0 1 0]

示例

G= findgroups(T.回报G,组数的向量从在表中的变量创建T.。当findgroups功能将所有的变量T.作为分组变量。

示例

[Gt] = findgroups(T.也回报t中,包含各组的唯一值的表。t包含跨变量的唯一值的独特组合T.。在变量T.t具有相同的名称,但表不需要具有相同的行数。

例子

全部收缩

使用组数字按性别患者身高测量分成不同的小组。然后计算各组的平均身高。

从数据文件加载患者高度和性格patients.mat

加载耐心谁是性别高度
名称大小字节类属性性别100X1 11412细胞身高100X1 800双

通过性别指定组findgroups

G = findgroups(性别);

比较第一五行性别G。在哪里性别包含'女性'G包含1。在哪里性别包含'男性'G包含2

性别(1:5)
ans =.5x1细胞{ '男'} { '男'} { '女'} { '女'} { '女'}
G(1:5)
ans =.5×12 2 1 1 1

拆分高度可变进使用高度的两组G。申请意思功能。这些组分别含有雌性和男性患者的平均高度。

splitapply(@均值,身高,G)
ans =.2×165.1509 69.2340

计算平均血压从性别和地位作为一个吸烟者分组测量的患者群体。

负载血压读数,性别,并从数据文件中吸烟的患者数据patients.mat

加载耐心谁是收缩系统舒张性别吸烟者
名称大小字节类属性舒张100X1 800双性别100X1 11412细胞吸烟者100X1 100逻辑收缩期100X1 800双

使用指定性别和吸烟有关病人信息组。G因为包含有来自值的四种可能的组合整数从一到四吸烟者性别

G = findgroups(吸烟者,性别);G(1:10)
ans =.10×14 2 1 1 1 1 3 2 2 1

计算各组的平均血压。

meanSystolic = splitapply(@均值,收缩压,G);meanDiastolic = splitapply(@平均值,舒张压,G);MBP = [meanSystolic,meanDiastolic]
MBP =4×2119.4250 79.0500 119.3462 79.8846 129.0000 89.2308 129.5714 90.3333

计算平均高度为患者群体,并在表中显示的结果。要定义的患者群体,使用来自附加输出参数findgroups

从数据文件加载患者高度和性格patients.mat

加载耐心谁是性别高度
名称大小字节类属性性别100X1 11412细胞身高100X1 800双

通过性别指定组findgroups。在输出参数的值性别定义组是findgroups发现在分组变量。

[G,性别] = findgroups(性别);

计算平均高度。创建包含平均高度的表。

medianHeight = splitapply(@中位数,身高,G);T =表(性别,medianHeight)
t =2×2表性别中间海运__________ ____________ {女性'} 65 {'男性'} 69

计算平均血压的患者群体,并在表中显示的结果。要定义的患者群中,使用额外的输出参数从findgroups

负载血压读数,性别,以及从数据文件100例患者吸烟的数据patients.mat

加载耐心谁是收缩系统舒张性别吸烟者
名称大小字节类属性舒张100X1 800双性别100X1 11412细胞吸烟者100X1 100逻辑收缩期100X1 800双

使用指定性别和吸烟有关病人信息组。计算平均血压为每个组。在输出参数的值性别抽烟者定义组是findgroups发现在分组变量。

[G,性别,吸烟者] = findgroups(性别,吸烟者);meanSystolic = splitapply(@均值,收缩压,G);meanDiastolic = splitapply(@平均值,舒张压,G);

与平均血压为各组患者创建一个表。

T =表(性别,吸烟者,meanSystolic,meanDiastolic)
t =4×4表性别吸烟者meanSystolic meanDiastolic __________ ______ ____________ _____________ { '女'}假119.42 79.05 { '女'}真正的129 89.231 { '男'}假119.35 79.885 { '男'}真正129.57 90.333

计算平均血压为使用分组变量是在一个表中的患者。

负载性别和100名患者到表中吸烟的数据。

加载耐心T =表(性别,吸烟者);T(1:5,:)
ans =.5×2表性别吸烟者__________ ______ {“男”} {真“男”} {假“女”} {假“女”} {假“女”}假

指定使用的患者群体性别吸烟者变量T.

G = findgroups(T);

从数据变量计算平均血压收缩系统舒张

meanSystolic = splitapply(@均值,收缩压,G);meanDiastolic = splitapply(@平均值,舒张压,G);MBP = [meanSystolic,meanDiastolic]
MBP =4×2119.4250 79.0500 129.0000 89.2308 119.3462 79.8846 129.5714 90.3333

按性别和地位作为一个吸烟者或不吸烟者分组患者创建的平均血压表。

负载性别和吸烟的数据为患者插入表中。

加载耐心T =表(性别,吸烟者);

指定使用的患者群体性别吸烟者变量T.。输出表t标识的组。

[G,TID] = findgroups(T);t
TID =4×2表性别吸烟者__________ ______ {“女”} {假“女”} {真“男”} {假“男”}真

从数据变量计算平均血压收缩系统舒张。追加平均血压要t

TID.meanSystolic = splitapply(@均值,收缩压,G);TID.meanDiastolic = splitapply(@平均值,舒张压,G)
TID =4×4表性别吸烟者meanSystolic meanDiastolic __________ ______ ____________ _____________ { '女'}假119.42 79.05 { '女'}真正的129 89.231 { '男'}假119.35 79.885 { '男'}真正129.57 90.333

输入参数

全部收缩

分组变量,指定为矢量,字符向量的单元阵列,或一个字符串数组。在唯一值一种鉴定组。

如果一种是一个向量,那么它可以是数字或数据类型的分类calendarDurationDateTime.持续时间逻辑, 或者细绳

分组变量,指定为表。findgroups将每个表变量作为一个单独的分组变量。变量可以是数字或数据类型的分类calendarDurationDateTime.持续时间逻辑, 或者细绳

输出参数

全部收缩

组号码,作为正整数的向量返回。为了N在分组变量中标识的组,每个整数1之间N指定的基团。G包含其中任何分组变量包含一个空字符载体或的NaT或未定义分类值。

  • 如果分组变量是向量,则G和分组变量都是相同的大小。

  • 如果分组变量位于表中,则长度G等于表中的行的数量。

识别每一个组,返回作为字符向量的载体或细胞阵列值。价值ID是的排序唯一值一种

识别每一个组的唯一值,返回一个表。的变量t从对应的变量有排序的唯一值T.。然而,tT.不必具有相同的行数。

更多关于

全部收缩

分体式应用组合工作流程

拆分申请,合并工作流是在数据分析常见。在这个工作流程中,分析将数据分成组,应用一个函数到每个组,并组合结果。该图显示了工作流的一个典型的例子和工作流的通过实现部件findgroupssplitapply

扩展能力

在R2015B中介绍