【发布时间】:2020-11-25 20:55:00
【问题描述】:
我有以下data.table
DT <- data.table(id=c(1,1,1,2,2,2,2),
date1=c("2013-11-22","2013-11-22","2013-11-22","2015-12-22","2015-12-22","2010-12-22","2010-12-22"),
variable=c(20.5,22.1,21.9,30.3,30.5,28.7,27.9))
我只想保留日期较晚的行以最终拥有此数据框
id date1 variable
1: 1 2013-11-22 20.5
2: 1 2013-11-22 22.1
3: 1 2013-11-22 21.9
4: 2 2015-12-22 30.3
5: 2 2015-12-22 30.5
我正在使用 data.table 并尝试过类似的方法
setDT(DT)[,.SD[which.max(date1)],by='id']
但它只给我每个id 一行的输出。我想保留所有以后日期的行。
【问题讨论】:
-
Svenja,你知道堆栈礼仪是接受你的问题的好答案吗?这样做不仅为回答者提供了一些分数,而且还为有类似问题的读者提供了一些结束。尽管您只能接受一个答案,但您可以选择对您认为有帮助的人进行投票。 (如果仍有问题,您可能需要编辑您的问题并提供更多详细信息。)请考虑此问题和过去的问题accepting 答案。
标签: r date data.table subset