练习五

本次练习的数据还是之前使用过的银行交易数据,点击下载该数据文件。这次练习着眼于数据的分析计算,使用LOD表达式,以聚合技术为基础,使得最终用户可以更轻松的对数据进行分析。

输入数据结构

此次练习的csv文件数据结构如下图所示:

1692345492891

需求

  • 用BaskAdapt加载这个名为bank_data.csv的文件。
  • 使用字段拆分功能,将Transaction Code字段中第一部分的银行名称信息拆分出来,重命名拆分出来的列名为Bank。
  • 创建一个名为Month的计算字段,从Transaction Date字段中取出该日期中包含的月份信息,以英文名形式显示月份名。
  • 将原Transaction Date字段删除,同时将Month字段改名为Transaction Date字段。
  • 将Value字段类型改为整数。
  • 添加一个聚合节点,添加Bank以及Transaction Date字段进行分组,添加Value字段对分组后的数据进行合计;从而生成每行记录中包含每个银行下每个月份的交易金额合计值。
  • 添加一个清理节点,创建一个名为Bank Rank per Month的字段,根据Transaction Date字段中包含的月份进行分块,再对Value字段的值进行排名。
    • 实现该功能需要将Partition和OrderBy表达式配合使用,Partition表达式根据Transaction Date字段中包含的月份进行分块,再用OrderBy表达式对Value字段用Rank函数进行排名显示。
    • 排名要求从大到小编排序号,因此OrderBy表达式中要采用DESC倒序方式。
  • 创建一个名为Avg Rank per Bank的计算字段,内容是利用上一步的Bank Rank per Month字段生成每家银行的平均排名。
    • 使用Fixed表达式先对Bank字段进行分组,再使用Avg函数对Bank Rank per Month字段求平均值。
  • 创建一个名为Avg Transaction Value per Bank的计算字段,计算生成每个排名的平均交易金额。
    • 还是使用Fixed表达式,先对Bank Rank per Month的字段进行分组,然后使用Avg函数对分组结果中Value字段计算平均值,得到的结果就是每个排名的平均交易金额。

输出

输出效果如下图所示:

1692347400617

共6个字段,36行数据。

实现视频

results matching ""

    No results matching ""