我正在尝试将一个 pdf 文件文件夹读入 R 中的数据帧。我可以使用 pdftools
读取单个 pdf 文件。图书馆和 pdf_text(filepath)
.
理想情况下,我可以获取一系列 pdf 的作者和标题,然后将这些 pdf 推送到具有这些列的数据框中,以便我可以使用基本的 tidytext
文本上的函数。
对于现在的单个文件,我可以使用:
library(pdftools)
library(tidytext)
library(dplyr)
txt <- pdf_text("filpath")
txt <- data_frame(txt)
txt %>%
unnest_tokens(word, txt)
在这里,我有一个带有单个单词的数据框。我想进入一个数据框,在那里我解压了文章,包括标题和作者列。
最佳答案
要查找工作目录中的所有 PDF,您可以使用 list.files
有一个论点:
all_pdfs <- list.files(pattern = ".pdf$")
all_pdfs
对象将是一个包含所有文件名的字符向量。然后,您可以设置一个管道来读取所有 PDF 并使用带有
map
的 tidytext 取消嵌套它们。来自 purrr 的函数。您可以使用 mutate()
内map()
如果您愿意,可以用文件名注释每一行。library(pdftools)
library(tidyverse)
library(tidytext)
map_df(all_pdfs, ~ data_frame(txt = pdf_text(.x)) %>%
mutate(filename = .x) %>%
unnest_tokens(word, txt))
您需要做一些更有趣的工作来获得标题和作者列,具体取决于您在何处获得该信息。也许在
txt
上使用正则表达式或 filename
在取消嵌套之前?
关于r - tidytext 从文件夹中读取文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44254493/