练习三
数据源
此次操作涉及数据源共两份,第一份是我们之前使用过的银行交易数据,就是对应的bank_data.csv文件,点击下载该数据,该数据内容如下图所示:
第二份数据为季度交易数据,对应的Targets.csv文件,点击下载该数据,该份数据内容如下图所示:
需求
- 在BaskAdapt中导入这两份数据。
- 对bank_data.csv数据的处理
- 针对Transaction Code字段,过滤掉所有非DSB类型的数据,也就是只保留以DSB开头的Transaction Code字段的值
- 对Online or In-Person字段值进行设置,值为1设置为Online;2为In-Person。
- 从Transaction Date字段中获取季度的值并重命名为Quarter。
- 使Online or In-Person字段、Quarter字段用进行分组对Value字段值进行合计统计
- 对Targets.csv数据的处理
- 将季度信息由列转为行,取到交易类型与季度对应的列表值
- 对列转为行生成的两个新字段进行重命名,分别是Quarter和Quarterly Targets
- 将Quarter字段中的“Q”字符移除,同时更改其数据类型为整数。
- 连接这两份数据
- 连接时需要使用一个以上的条件,使用Quarter和Online or In-Person两个字段作为连接条件
- 移除所有不需要的字段
- 计算bank_data数据中的Value值与Targets数据中的Quarterly Targets字段之间的差额,新字段命名为Variance to Target
输出
输出效果如下图所示:
共5个字段、8行数据。
实现视频
操作步骤
加载输入数据
将bank_data.csv和Targets.csv两份文件数据加载到BaskAdapt流程,如下图所示:
对bank_data.csv的处理
- 针对Transaction Code字段,过滤掉所有非DSB类型的数据
这个功能实现起来比较简单,方法有很多种可以使用表达式进行过滤,也可以使用拆分列再过滤的方式,这里只介绍拆分列再过滤的方式。
添加一个清理节点,选择Transaction Code字段,再点击工具栏上的按钮,在弹出窗口中分隔符输入-,拆分出一个字段,再将原Transaction Code字段删除,接下来将拆分出来的字段命名为Transaction Code,最后对这个字段的值进行过滤选择即可,如下图所示:
- 修复交易类型字段的值
这个操作在之前的练习中做过,方法就是直接编辑对应的值,如下图所示:
- Transaction Date字段中获取季度的值,并命名为Quarter
操作如下图所示:
- 使Online or In-Person字段、Quarter字段用进行分组对Value字段值进行合计统计
添加一个聚合节点实现上述操作,如下图所示:
对Targets.csv文件的处理
- 将季度信息由列转为行,并将产生的两新列命名为Quarter和Quarterly Targets
该操作需要添加一个转置节点实现,如下图所示:
- 将Quarter字段中的“Q”字符移除,同时更改其数据类型为整数
该功能使用Quarter字段中移除字母操作即可完成,如下图所示:
连接bank_data和Targets这两份数据
连接两份数据需要使用联接节点完成,我们将下方的转置节点拖动到上方的聚合节点上,在联接图标上松开鼠标即可,同时设置Quarter和Online or In-Person两个字段相等作为连接条件,操作如下图所示:
创建名为Variance to Target的新字段
计算bank_data数据中的Value值与Targets数据中的Quarterly Targets字段之间的差额,新字段命名为Variance to Target,完成这个操作我们可以添加一个新的清理节点实现,操作如下图所示:
到这里,所有操作完成,我们也可以根据需要将结果输出到目标数据库表。