我想知道是否有任何有效的方法来检查给定的列对(或两个以上的元组)是否在数据框中。
例如,假设我有以下数据框:
df=data.frame(c("a","b","c","d"),c("e","f","g","h"),c(1,0,0,1))
names(df)=c('col1','col2','col3')
col1 col2 col3
1 a e 1
2 b f 0
3 c g 0
4 d h 1
我想检查这个表是否包含列对的列表,比如:(a,b), (a,c), (a,e), (c,a), (c,g), (a ,F)
它应该向其输出:
FALSE FALSE TRUE FALSE TRUE FALSE
编辑:添加了一对新的 (a,f) 以避免混淆
我想通过将列连接成字符串然后与 %in% 进行比较来做到这一点,但这非常低效。我也想过用dplyr的过滤器做一个循环,但是当表格很大并且需要转换格式(即写几行)时,它也需要相当长的时间。
在 R 中是否有任何有效的方法来实现这一点?