我正在尝试使用 r 将使用 pdftools 和 tidyverse 从 pdf 中抓取的纯文本转换为数据框。我希望使用 tidyverse 包的解决方案。我使用以下代码获取包含我的基本信息的字符串列表:
library(tidyverse)
library(pdftools)
textdf <- pdf_text("raw pdf.pdf")
all_stats_lines <- textdf[3:28]%>%
str_squish()%>%
str_replace_all(",", "")%>%
str_remove_all("\\+80% \\+80% \\+80% \\+40% \\+40% \\+40% Baseline Baseline Baseline \\-40% \\-40%
\\-40% \\-80% \\-80% \\-80% Sun Feb 16 Sun Mar 8 Sun Mar 29 Sun Feb 16 Sun Mar 8 Sun Mar 29 Sun Feb
16 Sun Mar 8 Sun Mar 29")%>%
str_remove_all("compared to baseline")%>%
strsplit(" ")
这会产生以下格式的 26 个字符串列表的列表:
[[1]]
[1] "Alaska Variable 1 Variable 2 Variable 3 42 15 5"
[2] "Variable 4 Variable 5 Variable 6 43 30 11"
[3] "Alabama Variable 1 Variable 2 Variable 3 27 9 79"
[4] "Variable 4 Variable 5 Variable 6 20 23 4 "
[[2]]
[1] "Arizona Variable 1 Variable 2 Variable 3 40 17 7"
[2] "Variable 4 Variable 5 Variable 6 41 33 10"
[3] "Arkansas Variable 1 Variable 2 Variable 3 29 7 81"
[4] "Variable 4 Variable 5 Variable 6 22 27 7 "
... etc.
请注意子列表第 1 行和第 3 行开头的状态名称以及变量名称中的空格。每个状态应该是一行。应该有 6 列变量 1 变量 2 变量 3 变量 4 变量 5 变量 6 以及相应的值。
有关如何构建此表的任何解决方案?