r - 仅保留最近的日期

标签 r datatable

我有这个数据

data;code
18/02/2020;C106
05/04/2018;C107
11/09/2016;C107
16/02/2019;C109
11/03/2020;C110
04/03/2020;C114
18/02/2020;C114
06/02/2020;C121

我想为每个代码选择最近的日期,如下所示:

data;code
18/02/2020;C106
05/04/2018;C107
16/02/2019;C109
11/03/2020;C110
04/03/2020;C114
06/02/2020;C121

我尝试过:

tapply(data$data, data$code, max)

但是我收到了这个:

Error in Summary.factor(7L, na.rm = FALSE) : 
  ‘max’ not meaningful for factors 

最佳答案

使用dplyr,按“code”分组后,对datamax的行进行切片

library(dplyr)
library(lubridate)
data %>%
    group_by(code) %>%
    slice(which.max(dmy(data)))

或者在base R中,我们可以使用aggregate

aggregate(cbind(data = as.Date(data, '%d/%m/%Y')) ~ code, data, max)

关于r - 仅保留最近的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60998692/

相关文章:

javascript - 如何使用 jquery 动态更改数据表?

javascript - 标签应该出现在数据表插件中文本框的右侧

javascript - Bootstrap表格分页

R FactoMineR : Return cluster membership

r - 如何将参数传递给插入符号汇总函数

无需打开 R Studio 即可运行 Web 应用程序

javascript - 使用数据表进行高级搜索

r - 根据第三个变量向 ggplot2 绘图添加背景

r - ggplot中的分层轴?

javascript - 数据表允许对动态加载的列进行排序