gpt4 book ai didi

根据日期删除重复项

转载 作者:行者123 更新时间:2023-12-04 12:31:32 26 4
gpt4 key购买 nike

id=c(2,3, 3, 4, 4, 4, 5, 6, 7, 8, 8)
DateofCall=as.Date(c("2013-03-22", "2013-05-25", "2013-02-17", "2013-02-19", "2013-02- 21", "2013-04-22", "2013-06-22", "2013-03-28", "2013-08-22", "2013-03-18", "2012-12-28" ) )
mydata <- data.frame(id, DateofCall)

我想要一个新的数据框,其中只保留那些具有最新日期的重复 ID 的观察结果,如下所示:

id=c(2,3, 4, 5, 6, 7, 8)
DateofCall=as.Date(c("2013-03-22", "2013-05-25", "2013-04-22", "2013-06-22", "2013-03- 28", "2013-08-22", "2013-03-18") )
newdata <- data.frame(id, DateofCall)

我尝试使用它,但收到一条错误消息:test=mydata[!((duplicated(mydata$id) & max(mydata$DateofCall)) ), ] max() 用于日期变量?

有什么见解吗?

最佳答案

aggregate(DateofCall ~ id, mydata, max)

会成功的。

#   id DateofCall
# 1 2 2013-03-22
# 2 3 2013-05-25
# 3 4 2013-04-22
# 4 5 2013-06-22
# 5 6 2013-03-28
# 6 7 2013-08-22
# 7 8 2013-03-18

更新

此版本保留任意数量的附加列:

subset(mydata, ave(DateofCall, id, FUN = max) == DateofCall)

关于根据日期删除重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20054449/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com