在R中抓取文本文件
scraping text file in R
我正在尝试使用 R 从以下文本文件中提取一些信息。我需要 "Processor: SPARC T5"
行,该行位于标题 "Hardware Systems" 下,然后位于 "Java EE AppServer & Database Server HW (SUT hardware)" 下。我尝试了以下匹配表达式并为我提供所有处理器信息的方法。我有 50 个不同的文本文件,需要从所有文件中提取这些信息。如何提取 "Hardware Systems" 和 "Java EE AppServer & Database Server HW (SUT hardware)" 标题下的处理器信息。
a <-readLines("http://spec.org/jEnterprise2010/results/res2013q3/jEnterprise2010-20130904-00045.txt")
b <- grep("Processor:",a)
c <- a[b]
c[1] " Processor: SPARC T5" " Processor: Intel Xeon X5670"
好吧,您可以通过查找 header 部分来缩小该部分的范围,然后通过查看缩进停止的位置来查看该部分的起始位置,并仅搜索这些行。例如
sectionmarker <- "Java EE AppServer & Database Server HW (SUT hardware)"
s<-grep(sectionmarker, a, fixed=TRUE)
e<-grep("^\S", a[-(1:s)])[1]
grep("Processor", a[(s+1):(s+e-1)], fixed=T, value=T)[1]
# [1] " Processor: SPARC T5"
我正在尝试使用 R 从以下文本文件中提取一些信息。我需要 "Processor: SPARC T5"
行,该行位于标题 "Hardware Systems" 下,然后位于 "Java EE AppServer & Database Server HW (SUT hardware)" 下。我尝试了以下匹配表达式并为我提供所有处理器信息的方法。我有 50 个不同的文本文件,需要从所有文件中提取这些信息。如何提取 "Hardware Systems" 和 "Java EE AppServer & Database Server HW (SUT hardware)" 标题下的处理器信息。
a <-readLines("http://spec.org/jEnterprise2010/results/res2013q3/jEnterprise2010-20130904-00045.txt")
b <- grep("Processor:",a)
c <- a[b]
c[1] " Processor: SPARC T5" " Processor: Intel Xeon X5670"
好吧,您可以通过查找 header 部分来缩小该部分的范围,然后通过查看缩进停止的位置来查看该部分的起始位置,并仅搜索这些行。例如
sectionmarker <- "Java EE AppServer & Database Server HW (SUT hardware)"
s<-grep(sectionmarker, a, fixed=TRUE)
e<-grep("^\S", a[-(1:s)])[1]
grep("Processor", a[(s+1):(s+e-1)], fixed=T, value=T)[1]
# [1] " Processor: SPARC T5"