我正在对具有2500个文档的文本数据进行文本挖掘,并在文档中查找特定单词。
如果一个单词说“撕裂”,我想标记该文档。不存在,并将输出作为没有该单词的文档列表。并且还想将输出保存在文本文件中。
我正在使用以下代码
library(qdapRegex)
grab2 <- rm_(pattern=S("@around_", 1, "laceration", 1), extract=TRUE)
grab2(l$Text)
示例输出我正在
[[2164]]
[1] NA
[[2165]]
[1] NA
[[2166]]
[1] "laceration"
[[2167]]
[1] NA
[[2168]]
[1] NA
我想要的代码只返回没有“撕裂”字样的文件。并希望将输出写入文件。
答案 0 :(得分:2)
虽然您可以在R中执行此操作,但在命令行执行此操作会更有效(如果在Windows上使用类似Linux的操作系统或CygWin):
grep -v "\blaceration\b" *.txt >ListOfNoLac
在R中,你可以这样做:
fileList <- list.files(".", "\\.txt$")
hasLac <- sapply(fileList, function(x) length(grep("\\blaceration\\b", readLines(x))) > 0)
fileList[!hasLac]