我需要有一个函数来执行下面提到的操作;数据集为:
预期输出是'Difference'列中值,其余为输入列
请注意,在每个组中,我们首先需要确定最大“Closing_time”,相应的金额将是该期间的最大值。然后从先前周期的最大检测值中减去每一行值,并且结果将是该单元的差。此外,如果记录没有上一个期间,则该期间所有记录的最大值将为NA,差异计算将为NA。
在每组(成本中心、账户、年、月)内添加积分- Closing_time值如下所示(D-0 00 CST为最小值,D-0 18 CST为最大值,类似地,在D-0、D+1、D+3等范围内- D+3为最大值)
我试图首先找到是否存在每个组的先前值,然后找到每个期间内的最大时间,然后将金额值与之对应。进一步使用最大值,试图从最大值中减去记录金额,但不知道如何实现,请帮助。
1条答案
按热度按时间i7uq4tfw1#
我把这个问题分成3部分- a)首先找到每个cost_center和account的前一年和前一个月b)在cost_center,account,year和month的每一组中找到最大Closing_time。然后选择相应的Amount值作为amount。c)使用来自b的amount,减去当前的amount得到difference。