选择同一列中的最新日期和总和值

时间:2017-08-03 01:38:31

标签: r duplicates data.table data-manipulation

我不知道如何命名正确的标题;但是,以下是我的问题 我有一个数据:

ptr

我想删除具有相同ID Name Type Date Amount 1 AAAA First 2009/7/20 100 1 AAAA First 2010/2/3 200 2 BBBB First 2015/3/10 250 2 CCC Second 2009/2/23 300 2 CCC Second 2010/1/25 400 2 CCC Third 2015/4/9 500 2 CCC Third 2016/6/25 700 IDName的数据;但Type更小。或者你可以说保持Date是最大的 结果如下:

Date

我知道我可以使用ID Name Type Date Amount 1 AAAA First 2010/2/3 300 2 BBBB First 2015/3/10 250 2 CCC Second 2010/1/25 700 2 CCC Third 2016/6/25 1200 来获取重复的观察结果。

duplicated()

然而,这不是我想要的。虽然它删除了较小的dt <- fread(" ID Name Type Date 1 AAAA First 2009/7/20 1 AAAA First 2010/2/3 2 BBBB First 2015/3/10 2 CCC Second 2009/2/23 2 CCC Second 2010/1/25 2 CCC Third 2015/4/9 2 CCC Third 2016/6/25 ") dt$Date <- as.Date(dt$Date) dt[duplicated(ID) & duplicated(Name) & duplicated(Type)] ID Name Type Date Amount 1: 1 AAAA First 2010/2/3 200 2: 2 CCC Second 2010/1/25 400 3: 2 CCC Third 2016/6/25 700 ,但它无法保留第三个观察结果(Date = 2,ID = BBBB,Name =第一个)。另外,我仍需要总结Type

我该怎么办?

0 个答案:

没有答案