我查看了许多线程,但找不到我要找的内容。我有一个包含多个 id 和日期的数据集,如下所示。
id date code
1 2000-10-08 690
1 2000-10-08 75
1 2000-10-08 35
1 2001-01-01 315
1 2001-01-01 70
1 2008-09-05 690
1 2008-09-05 5
1 2008-09-05 60
2 2006-02-01 188
2 2006-02-01 198
2 2006-02-01 555
2 2006-02-01 690
3 2010-10-10 120
3 2010-10-10 75
3 2010-10-10 25
我不希望每个 ID 有重复的日期,并且希望根据最低代码值选择此日期,因此最终结果如下:
id date code
1 2000-10-08 35
1 2001-01-01 70
1 2008-09-05 5
2 2006-02-01 188
3 2010-10-10 25
我使用了 group_by 函数,以便它按 ID 和日期处理数据:
df %>%
group_by(id, date) %>%
arrange(code)
但是,我正在努力找出要使用的代码,以便现在仅保留每个 ID/日期组合的最低值。
谁能帮我解决这个问题吗?
谢谢
最佳答案
与 tidyverse
你可以这样做:
library(tidyverse)
dt %>%
group_by(id, date) %>%
summarise(code = min(code))
id date x
1 1 2000-10-08 35
2 1 2001-01-01 70
3 1 2008-09-05 5
4 2 2006-02-01 188
5 3 2010-10-10 25
关于r - 在r中使用group_by函数后如何选择最低值或删除重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54044120/