【发布时间】:2018-06-16 05:59:23
【问题描述】:
我有两个数据框。一个用于发票详细信息 (df_inv),另一个用于针对发票的收款详细信息 (df_coll)。 一张发票可能有多个托收/凭证。 发票表有大约 30 列,现在我们只检查 3 列进行计算(发票编号、预期金额、到期日) 同样,收款表有多个变量,对于这种情况,我们考虑 3 列(发票编号、凭证日期、贷记金额) PS:一张 300 美元的发票可能会在 3 个不同的日期通过 3 张代金券(每张 100 美元)支付。贷记金额也可能小于或大于预期金额。 根据发票表中的发票编号(唯一),我需要从收款表中找到其对应的凭证,根据凭证日期按升序排序,找到付款延迟(df_coll$VoucherDate - df_inv$DueDate ),然后计算每张发票的加权平均值。
df_inv 中的 x4,在 df_coll 中没有相应的条目。因此它将返回 NA
加权平均计算(1 张发票和 2 张付款凭证):
((1st pymt amt* 1st delay days)+ (2nd pymt amt* 2nd delay days))/((% of total credited amount)*(expected amount))
下面的示例数据,
发票表(df_inv)
Invoice No Expected Amount Due Date
x1 1400 02-01-2012
x2 850 20-04-2012
x3 1300 30-09-2012
x4 1500 25-01-2013
集合表(df_coll)
Invoice No Voucher Date Credit Amount
x1 26-11-2012 100
x2 24-10-2012 200
x1 11-05-2012 300
x1 22-08-2013 100
x2 12-07-2013 500
x3 30-01-2014 600
x2 24-06-2012 100
x3 31-11-2012 700
x1 29-02-2012 800
【问题讨论】:
标签: r sorting aggregate weighted-average