使用R编程循环多个pdf并将其转换为多个excel

时间:2018-07-06 08:56:50

标签: r excel pdf lapply

我的文件夹中只有几个PDF文件。我正在执行某些操作,并将它们转换为excel。下面是代码,

init <- dir(path = "C:/Users/sankirtanmoturi/Desktop/rloop", pattern = "\\.pdf$", all.files = TRUE, full.names = TRUE)
trans <- function(file){
      try <- pdf_text(file)
      try1 <- unlist(str_split(try,"[\\r\\n]+"))
      try2 <- str_split_fixed(str_trim(try1), "\\s{1,}, 20")
      write.xlsx(try2, sub("\\.xlsx$", "-UP.xlsx", file))
 }
lapply(init, trans)

我遇到以下错误

完全相同的错误(n,Inf):缺少参数“ n”,没有默认值

我发现,str_split或str_split_fixed存在问题。 但是,如果我不尝试循环并尝试单个文件,则表示转换成功

请帮助我为文件夹中的所有pdf文件运行此

1 个答案:

答案 0 :(得分:1)

您的问题主要有错别字。下面的代码应该可以工作:

init <- dir(path = "C:/Users/sankirtanmoturi/Desktop/rloop", pattern = "\\.pdf$", all.files = TRUE, full.names = TRUE)
trans <- function(file){
  try <- pdf_text(file)
  try1 <- unlist(str_split(try,"[\\r\\n]+"))
  try2 <- str_split_fixed(str_trim(try1), "\\s{1,}", 20)
  write.xlsx(try2, sub("\\.pdf$", "-UP.xlsx", file))
}
lapply(init, trans)