美文网首页
利用Prep实现累计求和效果

利用Prep实现累计求和效果

作者: 扫地sir | 来源:发表于2023-03-16 11:20 被阅读0次

    在Tableau中,累计求和(runningsum)函数是一种非常有用的表计算函数,可以帮助我们更好地理解数据的总体趋势和变化。表计算是基于视图数据进行的二次计算,这里的关键就是视图数据,但是在Prep中并没有视图数据的概念,也就没有表计算的概念。

    要在Prep中实现累计求和的效果,就必须使用一种特殊的技术——自连接,也就是数据表与自己进行join联接,然后再将得到的新表的相关值进行聚合,实现累计求和的效果。

    我们以Preppin' Data项目2023年第9周的一个挑战为案例。讲解其中的实现逻辑。

    我们省略掉前面的步骤,只考虑实现累计求和的内容。

    数据源为虚拟的银行交易数据,每个账户每天的交易明细,这里只截取了一个账户。

    首先利用partition和orderby函数,对数据进行排序,以便给每笔交易唯一的区分标记。

    为了便于区分联接后的字段,将左表“rank”字段改为“rank1”,“Transaction Value”改为“Transaction Value 1”.

    然后将两张表进行联接,连接条件为Account=Account,rank1>=rank

    过程如下图所示:

    联接之后的结果如下图所示:

    我们看到当rank1=1的时候,rank=1,只保留了1条数据。Transaction Value1和Transaction Value没有区别。

    我们看到当rank1=2的时候,rank=1和2,保留了2条数据。Transaction Value1仍然是该笔交易金额,而Transaction Value则保留了累计的2笔交易金额。

    我们看到当rank1=3的时候,rank=1、2和3,保留了3条数据。Transaction Value1仍然是该笔交易金额,而Transaction Value则保留了累计的3笔交易金额。

    后面的数据以此类推。

    最后只需要增加一个聚合步骤,将结果按下图聚合,即可完成用时输出交易额和累计交易额的效果。

    这部分内容的视频教学,可以到我的B站专栏《Prep案例集》第9期中观看。欢迎一键三连!

    https://www.bilibili.com/video/BV1kL411k75o/

    相关文章

      网友评论

          本文标题:利用Prep实现累计求和效果

          本文链接:https://www.haomeiwen.com/subject/xsorrdtx.html