鉴于下面的示例数据sampleDT
,对于创建函数的任何帮助将不胜感激,该函数使我可以有条件地提取到列表,而无需重复出现在所有列中的变量值-至少在每个列中出现一次列,无论位置如何。
# sample data
sampleDT<-structure(list(V2 = c(5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15),
V3 = c(3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 2), .indices = c(6,
7, 8, 9, 10, 11, 12, 13, 14, 15, 16), .indices3 = c(1, 2,
3, 4, 5, 6, 7, 8, 9, 10, 11)), row.names = c(NA, -11L), class = "data.frame")
在此先感谢您的帮助。
答案 0 :(得分:3)
Reduce(f = intersect, x = sampleDT)
[1] 6 7 8 9 10 11
在所有列上使用intersect
设置操作。
Reduce
是写intersect(intersect(sampleDT[[1]], sampleDT[[2]]), sampleDT[[3]]), ...))