我想基于两个(或更多)变量的唯一组合来计算变量id
。考虑简单的例子如下:将唯一ID分配给数据帧中的等效行
# Example dataframe
mydf <- data.frame(var1 = LETTERS[c(1, 2, 1)], var2 = LETTERS[c(2, 1, 3)])
mydf
# var1 var2
# A B
# B A
# A C
在此,行1和2应具有相同的id
因为AB
和BA
表示相同的元件的组合。但第3行有不同的id
,因为AC
组合只出现一次。
# Desired output
cbind(mydf, cid = c(1, 1, 2))
# var1 var2 cid
# A B 1
# B A 1
# A C 2
有什么建议吗?
例如,如果第2行和第3行在“mydf”中交换失败。 – 989