我正在尝试标记哪个文本文件具有关键字"最佳日志值已被复制。"在我的100个文本文件中。 我有一个文件有100个文本文件,我想知道哪个文本文件包含关键句"最好的LOGLIKELIHOOD价值已被复制。"。
我怎么能用R来标记哪个文本文件有关键句?
谢谢!
答案 0 :(得分:3)
可能会让你开始。如果所有文本文件都在工作目录中
Pat <- "THE BEST LOGLIKELIHOOD VALUE HAS BEEN REPLICATED."
indx <- sapply(
filelist,
function(x)
{
any(grepl(Pat, readLines(x), fixed = TRUE))
}
)
使用我创建的三个示例文件
indx
file1.txt file2.txt file3.txt
# TRUE FALSE TRUE
filelistNew <- filelist[indx]
lapply(filelistNew,
function(x) write.csv(readLines(x),file=gsub("txt","csv",x),
row.names=F))###In case you wanted to write the files to another folder,
#use `paste` i.e. `....file=paste(path, gsub("txt","csv",x), sep="/"),...`
list.files(pattern="file")
[1] "file1.csv" "file1.txt" "file2.txt" "file3.csv" "file3.txt"
您可以在Excel中打开.csv
文件。您还可以查看library(XLConnect)
或library(xlsx)