我有这个由两个向量组成的数据框,它可以运行到数百万行。我使用循环,但需要一天的时间来比较值。
有人可以提出任何应用函数吗?
名称销售
A 1
A 2
A 3
B 1
B 5
B 6
。
。
我想要的是唯一的名称列表以及针对该特定名称的销售中的最大元素。像A有3行,最高销量是3。
输出应在数据框中
名称销售
A 3
B 6
答案 0 :(得分:0)
您可以尝试使用aggregate()
aggregate(V2 ~ ., df1 , max)
# V1 V2
#1 A 3
#2 B 6
数据强>
df1 <- structure(list(V1 = structure(c(1L, 1L, 1L, 2L, 2L, 2L),
.Label = c("A", "B"), class = "factor"), V2 = c(1L, 2L, 3L, 1L, 5L, 6L)),
.Names = c("V1","V2"), class = "data.frame", row.names = c(NA, -6L))