gpt4 book ai didi

r - 在R中保留较少的最近重复行

转载 作者:行者123 更新时间:2023-12-01 23:20:47 26 4
gpt4 key购买 nike

因此,我有一个包含帐单号,日,月,年和汇总值的数据集。有很多重复的公牛号码,我想保留第一个。如果有相同的日期,月份和年份的重复项,我想保留总计最高值的重复项。

例如,如果数据集现在看起来像这样:

Bill Number   Day   Month    Year   Ag. Value
1 10 4 1998 10
1 11 4 1998 14
2 23 11 2001 12
2 23 11 2001 9
3 11 3 2005 8
3 12 3 2005 9
3 13 3 2005 4

我希望结果看起来像这样:
Bill Number  Day  Month  Year  Ag. Value
1 10 4 1998 10
2 23 11 2001 12
3 11 3 2005 8

我不确定是否可以使用命令并仅介绍所有这些参数,还是应该分阶段执行,但是无论哪种方式,我都不确定如何开始。我使用了 duplicate()unique(),然后卡住了。

谢谢!

最佳答案

library( data.table )

dt <- fread("Bill_Number Day Month Year Ag_Value
1 10 4 1998 10
1 11 4 1998 14
2 23 11 2001 12
2 23 11 2001 9
3 11 3 2005 8
3 12 3 2005 9
3 13 3 2005 4", header = TRUE)

dt[ !duplicated( Bill_Number), ]

# Bill_Number Day Month Year Ag_Value
# 1: 1 10 4 1998 10
# 2: 2 23 11 2001 12
# 3: 3 11 3 2005 8

要么
dt[, .SD[1], by = .(Bill_Number) ]  #other approach, a bit slower

关于r - 在R中保留较少的最近重复行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53960570/

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