Here is a solution with data.table
:
library("data.table")
DT <- fread(
"id info
1 0
1 0
2 0
2 10
3 20
3 20")
DT[, .N, .(id, info)][N==1, .(id, info)]
# > DT[, .N, .(id, info)][N==1, .(id, info)]
# id info
# 1: 2 0
# 2: 2 10
a variant:
DT[, if (.N==1) TRUE, .(id, info)][, .(id, info)]
Here is a solution using an anti-join:
DT[!DT[duplicated(DT)], on=names(DT)]