我有一个pdf文件夹,例如foo1.pdf、foo2.pdf、foo3.pdf.
我想在Rstudio中阅读这些PDF,并为文档名称和相应的文本创建一个包含2列的数据框架。例如:
Document <- c("foo1","foo2","foo3")
Text <- c("text in foo1", "text in foo2","text in foo3")
DF <- data.frame(Document, Text)
到目前为止,我尝试过但没有成功:
setwd("path to files")
library(pdftools)
files <- list.files(pattern="pdf$", full.names=TRUE)
filestext <- lapply(files, pdf_text)
filestextDF <- as.data.frame(matrix(filestext,ncol =2,byrow = F))
names(filestextDF) <- c("Document", "Text")
如何才能做到这一点?
您可以使用paste0
将每个pdf中的文本组合成一个字符串,并创建一个具有文件名及其相应文本的数据帧。
library(pdftools)
filestextDF <- data.frame(Document = files,
text = sapply(files, function(x)
paste0(pdf_text(x), collapse = ' ')))