r - 按组选择最近日期的行

标签 r date

我在 R 中有一个数据框,其中行代表事件,一列是事件的日期。事件发生的事情由 ID 列描述。因此,对于每个 ID,都有多个条目。

如何过滤数据框以便只保留每个 ID 的最新事件? ID 是整数,日期的格式为 mm/dd/yyyy .

最佳答案

你可以试试

library(dplyr)
df %>% 
  group_by(ID) %>%
  slice(which.max(as.Date(date, '%m/%d/%Y')))

数据
df <- data.frame(ID= rep(1:3, each=3), date=c('02/20/1989',
'03/14/2001', '02/25/1990',  '04/20/2002', '02/04/2005', '02/01/2008',
'08/22/2011','08/20/2009', '08/25/2010' ), stringsAsFactors=FALSE)

关于r - 按组选择最近日期的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30058708/

相关文章:

r - 如何向用lattice和latticeExtra制作的图添加图例?

javascript - 在输入字段上显式键入时进行 jQuery 日期验证

r - 查找列之间的一对一、一对多和多对一关系

r - "Error in UseMethod("mutate ") : no applicable method for ' mutate ' applied to an object of class "function"尝试分隔列时

c# - 如何将从数据库中检索到的日期转换为仅显示 d/mm/yyyy?

android - 如何根据语言环境显示日期格式?

mysql - 根据日期将排名编号分配给可能重复的行

Python获取上月和上年

r - 转换数据以在其上使用 lubridate

r - FactoMineR/factoextra 可视化树状图中的所有簇