我对R相当陌生(在法学院中,所以这对我来说都是很新的),所以如果措辞不佳,我深表歉意。 我有一系列大约1500个文档,我将这些文档导入到R中以便以后进行分类和分析。我需要做的第一件事是排除所有用法语编写的文档,这些文档的标题/doc.info中带有“ FR”标记。我很好奇我可以在导入文件之前使用什么样的代码来排除该代码,以在分析任何内容之前将其包含一个干净的数据集(因为这样做显然会使诸如情感分析之类的过程变得一团糟)。 感谢任何帮助(即使该帮助说明了如何更好地谈论编码)。 亲切的问候!
编辑1 我正在使用的代码是readtext(folder),您可以在下面看到: 文件夹<-“ C:/ [路径]” 提交<-readtext(文件夹)
submissions_text<-submissions$text
submission_number<- numeric()
submission_person<- factor()
submission_code<- factor()
submission_language<-factor()
submission_location<-factor()
for (submission_name in submissions$doc_id) {
submission_name<-gsub(".txt","",submission_name)
number<-as.numeric(strsplit(submission_name, "_|-")[[1]][1])
submission_number<-c(submission_number,number)
person<-strsplit(submission_name, "_")[[1]][2]
submission_person<-c(submission_person, person)
code<-strsplit(submission_name, "_")[[1]][3]
submission_code<-c(submission_code, code)
lang<-strsplit(submission_name, "_")[[1]][4]
submission_language<-c(submission_language, lang)
location<-strsplit(submission_name, "_")[[1]][5]
submission_location<-c(submission_location, location)
}
submissions<-cbind(submissions,submission_number)
submissions<-cbind(submissions,submission_person)
submissions<-cbind(submissions,submission_code)
submissions<-cbind(submissions,submission_language)
submissions<-cbind(submissions,submission_location)
submissions<-submissions[order(submissions$submission_number, decreasing = FALSE),]
这只是我代码的组织方面。我希望在此之前排除所有法国数据(但如果事后再来,我也会对此感到非常满意)。
答案 0 :(得分:4)
您需要的功能可以在list.files()
函数中找到。可以找到文档here。
简而言之,您的代码可能最终看起来像这样:
setwd("c:/path/to/your/data/here")
files <- list.files()
non_french_files <- files[!grepl("FR", files)]
lapply(non_french_files, function(x) {
f <- read.csv(x)
#do stuff with f
}]
注意-您可以直接利用`list.files()中的pattern
参数,但是我选择分两步进行操作,以防您想对法语文件进行其他操作。这也简化了每一行代码的工作...
......祝你好运,欢迎来到R!
答案 1 :(得分:1)
这里与@Chase相似:
#set wd
files<-list.files()[!grepl("FR",list.files())]
lapply(files,function(x) read.csv(x)) #reads all at once, might want to save each