我有一个data.table
包含字符串的向量。我可以操纵data.table,但不能操纵vector,x
因为它包含文件头中的值。
DT <- data.table::data.table(c("A", "B", "C"))
x <- c("A (xy)", "B", "C", "D", "E", "F")
我想检查DT$V1
不包含哪些字符串x
(完整或部分由regex指定)。
(或者在我的用例中:我想检查哪些值DT$V1
不包含在文件的列中)。
因此,在此示例中,所有行都匹配,并且输出为空数据表,因为A
包含在A (xy)
和中B
,C
完全匹配。
因此,基本上DT[!V1 %in% x]
但例如使用正则表达式V1
作为该表达式不包括在内A
。
我已经grepl(paste(DT$V1, collapse = '|'), x)
按照类似问题的答案的建议进行了尝试,该问题的工作原理很好,但可以得出矢量的指标,而不是data.table的指标。
DT[sapply(V1, function(i) any(grepl(i, x)))]
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句