【发布时间】:2019-02-26 00:23:55
【问题描述】:
我有一个如下所示的数据集:
data
ID Application Admission
1 FALSE FALSE
2 FALSE FALSE
2 TRUE FALSE
3 FALSE FALSE
3 TRUE FALSE
3 TRUE TRUE
我想以某种方式按 ID 对行进行分组,然后删除除该 ID 的最后一行之外的所有内容。它看起来像这样:
ID Application Admission
1 FALSE FALSE
2 TRUE FALSE
3 TRUE TRUE
我对编码还很陌生,所以我只是一一进行,并单独删除了行。有一个更好的方法吗?谢谢你。
【问题讨论】:
-
@Amy 答案在 MySQL 中,CarolynGrace 要求提供 R 解决方案
-
如果你使用data.table包并将其转换为data.table,有
unique(data, by="ID", fromLast = TRUE)(看看我能不能找到一个骗子......) -
@divi & Rich - 这个问题的答案(如 Wen 的)不适用于您链接的第一个和最后一个问题,所以不是一个很好的骗子。不过,我添加的也不是(专门针对 data.table)...
-
data.table 答案的细微变化 -
setDT(data)setkey(data,ID)data[J(unique(ID)),mult="last"]
标签: r