使用aggregate()函数将日期链接到另一列中的另一个特定值

时间:2017-05-24 19:01:49

标签: r

是否可以将R中的aggregate()函数用于链接到另一个变量列中特定值的10/20/2016(MM / DD / YYYY)形式的日期?如果是这样,我需要查看最近的日期并删除最早的日期。

例如,

1 Date
A 10/20/2016
A 10/25/2016
A 11/01/2016
B 11/02/2016
B 11/02/2016
B 11/08/2016

会变成

1 Date
A 11/01/2016
B 11/08/2016

为了清楚起见,在这种情况下,较高的月份显然是最近的月份,不一定是当天价值的最高值(它们都来自同一年,所以这不是一个问题)。

1 个答案:

答案 0 :(得分:1)

如果日期为Dates,则可以使用聚合执行此操作。

## Create test data set
df = read.table(text="ID Date
A 10/20/2016
A 10/25/2016
A 11/01/2016
B 11/02/2016
B 11/02/2016
B 11/08/2016",
header=TRUE, stringsAsFactors=FALSE)
df$Date = as.POSIXct(df$Date, format="%m/%d/%Y" )

aggregate(df$Date, by=list(df$ID), FUN=max)
  Group.1          x
1       A 2016-11-01
2       B 2016-11-08