这是我的df。正如您所看到的,它具有独特的价值,因为发票可以在同一个月内多次申报。
Invoice mtime Client.Code. Invoice.Date Amount
1 20170100000 2017-04-03 13:03:53 1006442 2017-01-23 645.75
6 20170100001 2017-05-04 11:57:06 1004791 2017-01-23 5798.10
15 20170100007 2017-04-03 13:03:53 1004775 2017-01-23 12912.81
21 20170100008 2017-04-03 13:03:53 1004775 2017-01-23 132.37
26 20170100011 2017-04-11 09:59:42 1004689 2017-01-23 13455.10
38 20170100011 2017-04-19 15:59:18 1004689 2017-01-23 13455.10
50 20170100011 2017-05-04 11:57:06 1004689 2017-01-23 13455.10
62 20170100012 2017-04-03 13:03:53 1004775 2017-01-23 15649.38
68 20170100013 2017-04-03 13:03:53 1004849 2017-01-23 6616.40
74 20170100013 2017-04-11 09:59:42 1004849 2017-01-23 6616.40
80 20170100024 2017-04-03 13:03:53 1004962 2017-01-24 3046.59
我想知道每月索赔的发票总额(mtime),所以如果同一张发票在一个月内被索赔两次,只需加一个,但如果已经在几个月内索赔,那么每个月应该加一个。
我不知道该怎么做。
谢谢。
答案 0 :(得分:0)
假设您的data.frame名为createEntityManager()
,您可以先创建一个从发票日期中提取月份和年份的变量:
DF
然后为每个发票索赔创建唯一标识符,在每个月内删除重复索赔:
invoice.months <- format(as.Date(DF$Invoice.Date), "%m%Y")
每月(从最早月份到最近一个月)获取唯一发票索赔的数量:
unique.id <- unique(paste(DF$Invoice, invoice.months))