假设我有以下数据集:
PlotName<- c(A,B,B,C,D,E,F,F,F)
NewValue<- c(1,2,1,3,0,0,2,1,3)
OldValue<- c(3,3,1,2,1,3,0,3,1)
我想对
NewValue
中重复的元素的OldValue
和PlotName
值求和,消除相同tipe重复的元素(字母)。例如,对于'b'newValue=2+1=3和oldValue=3+1=4即:
PlotName<- c(A,B,C,D,E,F)
NewValue<- c(1,3,3,0,0,6)
OldValue<- c(3,4,2,1,3,4)
我可以在
PlotName
中使用repetad值筛选行(例如,使用dplyr),然后分别对这些值求和,但我正在寻找一种更快的方法来操作具有许多重复值的大型数据集。 最佳答案
使用dplyr
:
library(dplyr)
data.frame(PlotName, NewValue, OldValue) %>%
group_by(PlotName) %>%
summarise_all(sum)
# # A tibble: 6 × 3
# PlotName NewValue OldValue
# <fctr> <dbl> <dbl>
# 1 A 1 3
# 2 B 3 4
# 3 C 3 2
# 4 D 0 1
# 5 E 0 3
# 6 F 6 4
关于r - 不同行中的总和值在列中共享相同的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43077633/