【发布时间】:2019-04-14 19:18:03
【问题描述】:
我正在寻找使用 data.table 的解决方案 ― 我有一个包含以下列的 data.table:
data <- data.frame(GROUP=c(3,3,4,4,5,6),
YEAR=c(1979,1985,1999,2011,2012,1994),
NAME=c("S","A","J","L","G","A"))
data <- as.data.table(data)
数据表:
GROUP YEAR NAME
3 1979 Smith
3 1985 Anderson
4 1999 James
4 2011 Liam
5 2012 George
6 1994 Adams
对于每个组,我们要使用以下规则选择一行:
- 如果年份 > 2000,请选择最小年份大于 2000 的行。
- 如果没有年份 > 2000,则选择最大年份的行。
期望的输出:
GROUP YEAR NAME
3 1985 Anderson
4 2011 Liam
5 2012 George
6 1994 Adams
谢谢!我已经为此苦苦挣扎了一段时间。
【问题讨论】:
标签: r data.table