如何在R循环中使用tryCatch?
我正在尝试从pdf文档中提取具有特定关键字的短语。我使用“for”循环。在某些文档中没有出现任何关键字之前,一切都是正确的。它返回以下错误:“data.frame中的错误(txt=doctxt,句子=句子):参数表示行数不同:1,0” 因此,我想使用tryCatch函数,这样当出现错误时,它会返回发生错误的文档,并继续循环。我有以下摘要形式的代码,但tryCatch函数不适用于我如何在R循环中使用tryCatch?,r,error-handling,try-catch,R,Error Handling,Try Catch,我正在尝试从pdf文档中提取具有特定关键字的短语。我使用“for”循环。在某些文档中没有出现任何关键字之前,一切都是正确的。它返回以下错误:“data.frame中的错误(txt=doctxt,句子=句子):参数表示行数不同:1,0” 因此,我想使用tryCatch函数,这样当出现错误时,它会返回发生错误的文档,并继续循环。我有以下摘要形式的代码,但tryCatch函数不适用于我 for (doctxt in files) { txt <- tabulizer::extract_te
for (doctxt in files) {
txt <- tabulizer::extract_text(doctxt, encoding ="UTF-8")
text <- unlist(strsplit(txt, "\\."))
#ERROR HANDING
possibleError <- tryCatch(sentence <- stringr::str_subset(text, "(?=.*ai4people)|(?=.*asilomar)"), error = function(e) e)
if(inherits(possibleError, print(doctxt))) next
df_p0 <- data.frame("pdf"=doctxt, "sentence" =sentence)
}
for(文件中的docText){
txt您不需要tryCatch
,如果没有匹配项,您可以尝试if(!length(句子))next
跳过数据帧步骤。您得到的错误不是在创建句子时发生的,而是在尝试执行数据帧(1,NULL)
或数据帧(1,字符(0))