覆盖主要内容
版本: 6.1.0

分组

组件介绍

组件作用

分组”组件基于指定的字段或字段集合将源中的行分组。每个组都会生成一个新行。它还可以为组生成一个或多个聚合值。常见用途是计算每种产品的平均销售额,并计算您有库存的物品的数量。

输入输出描述


  • 输入:数据流
  • 输出:分组集合后的数据流

组件图标

案例示例

该案例以朝阳医院 2018 年销售数据为例,读取 excel 中的数据,按商品名称分组并统计销售数量。总体流程如下图所示:

输入输出结果对比预览:

案例数据

数据共包括 20 条数据,主要字段分别为购药时间、社保卡号、商品编码、商品名称、销售数量、应收金额及实收金额。

案例操作

文件上传

步骤将本地文件上传到 UDI 文件库中, 为 Excel 组件提供数据输入来源。

需要上传的数据文件:朝阳医院2018年销售数据.xlsx

在 UDI 文件库中可以看到上传后的文件。

Excel文件输入

此步骤利用【Excel输入】组件读取 UDI 中的 xlsx 文件。

Excel输入组件详细使用文档见:Excel文件输入

该组件配置主要包括 2 步:

第一步:选择要加载的文件

注意:

  • 表格类型(引擎)需要选择为 "Excel XLSX, XLS"

第二步:配置需要读取的字段

输入结果预览:

排序记录

该步骤利用【排序记录】组件根据字段值(升序或降序)对行进行排序。

输入数据预览:

排序组件配置如下:

选择排序字段及排序方式:

排序结果预览:

分组

此步骤利用【分组】组件可对指定的字段或字段集合将数据源中的行分组。每个组都会生成一个新行。它还可以为组生成一个或多个聚合值。

组件输入数据预览:

分组组件配置包括 2 步:

第一步:选择分组字段

第二步:配置聚合字段

注意:

  • 在进行对数据进行分组之前需要先对数据进行排序,否则会出现分组重复的情况 下列图片为未进行排序操作时的分组情况:

结果预览

最终分组完成后,各药品总销售量数据结果如下图所示:

页面介绍

运行“分组”组件得到下图所示的界面:

参数选项

分组”组件主要包括如下参数:

选项说明样例值
步骤名称指定画布上步骤的唯一名称。
包括所有行?选择是否要在输出中包括所有行,而不是仅包括聚合行。除非选择了“包括所有行”选项,否则以下选项不可用:
  • 临时文件目录
  • TMP文件前缀
  • 添加行号,在每个组中重新启动
  • 行号字段名称
临时文件前缀指定存储临时文件的目录。默认值为系统的标准临时目录。选择“包括所有行”选项并且分组的行数超过5000行时,必须指定目录。
增加行号,每组重新开始在每个组中重新在每个组中添加以1重新开始的行号。当选择包括所有行并且此选项都被选中时,所有行都包括在输出中,并且每行都有一个行号。
行号列名指定要在其中为每个新组添加行号的字段的名称。
总返回一个结果行返回结果行,即使没有输入行也是如此。没有输入行时,此选项将返回零(0)的计数。
分组字段指定要分组的字段。
名称聚合字段的名称。
subject您要在其上使用聚合方法的主题。
类型填写聚合方法,聚合方法可以是以下方法:
  • 求和
  • 平均
  • Median
  • Percentile (linear interpolation)
  • 最小值
  • 最大值
  • 个数
  • 使用,连接同组字符串
  • 第一个非空值
  • 最后一个非空值
  • 第一个值
  • 最后一个值
  • 累计求和对所有行
  • 累计平均对所有行
  • 标准差
  • 使用指定字符连接同组字符串
  • Number of distinct values 
  • Number of rows (without field argument)
  • Standard deviation (sample)
  • Percentile (nearest-rank method)
集合值