23

我正在尝试从一些 pdf 报告中的表格中提取数据。

我已经看到一些使用 pdftools 和类似软件包的示例,我成功地获取了文本,但是,我只想提取表格。

有没有办法使用 R 来识别和提取表?

4

2 回答 2

17
于 2017-05-24T00:52:32.963 回答
6

我也很想知道这个问题的答案。但根据我的经验,您需要使用正则表达式以您想要的格式获取数据。您可以看到以下示例:

library(pdftools)
dat <- pdftools::pdf_text("https://s3-eu-central-1.amazonaws.com/de-hrzg-khl/kh-ffe/public/artikel-pdfs/Free_PDF/BF_LISTE_20016.pdf")
dat <- paste0(dat, collapse = " ")
pattern <- "Berufsfeuerwehr\\s+Straße(.)*02366.39258"
extract <- regmatches(dat, regexpr(pattern, dat))
extract <- gsub('\n', "  ", extract)
strsplit(extract, "\\s{2,}")

然后可以从这里循环数据以根据需要创建表。但正如您在链接中看到的那样,PDF不仅仅是一张表格。

于 2017-05-23T17:22:35.207 回答