首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用奇怪的标题将pdf表导入到r

使用奇怪的标题将pdf表导入到r
EN

Stack Overflow用户
提问于 2019-04-24 06:06:58
回答 1查看 245关注 0票数 1

我正在尝试将这个pdf,https://www.mountwashington.org/uploads/forms/2018/01.pdf,导入到r中,并将其格式化为一个数据帧。有没有一种方法可以有效地使用奇怪的标头并只获取数据的主要标头(而不是location和station等较大的标头)?

我能够通过转换网站将pdf转换成excel文件,然后手动编辑excel中的列/行,然后导入到r中,但这非常低效,我想以某种方式在r中完成。我尝试使用制表程序包,但它给我的数据是字符,而且完全没有条理。

这是我想要的样子:

代码语言:javascript
复制
> a
   DAY MAX MIN AVG NORM DEPART HEAT COOL TOTAL..EQUIV. SNOW...ICE AVG.WIND.SPEED..MPH. FASTEST.SPEED      DIR
1    1 -14 -25 -19    6    -25   84    0          0.00        0.0                 55.3            79 310 (NW)
2    2  -7 -23 -15    6    -21   80    0          0.01        0.7                 53.8            84  280 (W)
3    3   7  -7   0    6     -6   65    0             T          T                 39.2            64  280 (W)

这是我用tabulizer得到的结果:

代码语言:javascript
复制
 [,1]                                                                                                                                       
 [1,] "WS FORM F-6"                                                                                                                              
 [2,] ""                                                                                                                                         
 [3,] "PRELIMINARY LOCAL CLIMATOLOGICAL DATA"                                                                                                    
 [4,] ""                                                                                                                                         
 [5,] "LATITUDE LONGITUDE"                                                                                                                       
 [6,] "44 DEGREES16 MINUTESNORTH 71 DEGREES  18 MINUTES  WEST"                                                                                   
 [7,] "TEMPERATURE (°F) PRECIPITATION (IN.)"                                                                                                    
 [8,] "DEGREE DAYS TOTAL SNOW & SNOW/ICE ON AVG"                                                                                                 
 [9,] "DAY MAX MIN AVG NORM DEPART HEAT COOL (EQUIV) ICE GROUND-7AM SPEED"                                                                       
[10,] "1 -14 -25 -19 6 -25 84 0 0.00 0.0 23 55.3"

然后是更多的行,以及更多的无组织数据,这些数据似乎是随机从页面中拉出来的。

任何帮助都是最好的,谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-24 12:24:18

您可以使用tabulizer来提取该表。使用locate_areas查找要提取的区域的坐标。

看看这个link

代码语言:javascript
复制
library(tabulizer)

# I used locate_areas("https://www.mountwashington.org/uploads/forms/2018/01.pdf") 
# to find the area of the table to extract

mw_table <- extract_tables(
  "https://www.mountwashington.org/uploads/forms/2018/01.pdf",
  output = "data.frame",
  area =  list(c(103.49321,  15.79171, 402.56716, 586.74627)),
  guess = FALSE
  )

mw_table[[1]]

然后,您只需更改数据帧的名称。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55820047

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档