transaction | sum
-------------|--------
1 | refill | 1450
2 | write-off | -1450
3 | refill | 3500
我只选择那些绝对值与数字相同的值。有第1行和第2行。如何在R中做到这一点?
答案 0 :(得分:1)
使用Andre的数据集的另一种方法:
df1<-data.frame(index=1:6,sum=c(1,2,3,-1,3,4))
df1[duplicated(abs(df1$sum)) | duplicated(abs(df1$sum), fromLast = T),]
这是基于以下顺序进行的:依次搜索正向副本,然后反向搜索副本,然后OR
对结果进行匹配以匹配所有重复的案例。如此处所述:Find indices of duplicated rows
答案 1 :(得分:0)
df1<-
data.frame(index=1:6,sum=c(1,2,3,-1,3,4))
# index sum
#1 1 1
#2 2 2
#3 3 3
#4 4 -1
#5 5 3
#6 6 4
keep <- abs(df1$sum) %in% abs(df1$sum[duplicated(abs(df1$sum))])
df1[keep,]
# index sum
#1 1 1
#3 3 3
#4 4 -1
#5 5 3