我从《华尔街日报》下载的数据中有以下输出。
> Search(MySymList, " Net Income")
Fiscal year is July-June. All values AUD Millions. 2018 2017 2016 2015 2014 5-year trend
82 Consolidated Net Income 949 814 376 850 769
86 Net Income 934 792 335 817 737
88 Net Income Growth 18.04% 135.99% -58.93% 10.83% -
103 Net Income After Extraordinaries 934 792 335 817 909
107 Net Income Available to Common 934 792 335 817 565
我想捕获,但由于数据中的位置(如行号)Net Income没有一致性,我尝试使用特别是。它在查找大多数信息方面做得很好,但我对如何删除其他行感到困惑。Net Incomelibrary qdapSearch
我认为这exclude可能会有所帮助,但它似乎不起作用。
Search(MySymList, " Net Income", exclude = "Common")
Error in agrep(term, x, ignore.case = TRUE, max.distance = max.distance, :
unused argument (exclude = "Common")
我可以Net Income通过其他方式获得,但我更愿意只使用一个功能,即存在Search或任何library qdap可能提供的功能。
任何指导都将受到欢迎。
编辑!!
缩减代码如下,因为运行起来比为其提供数据更容易。该符号与原始符号不同,因此行号将发生变化。
library(httr)
library(XML)
library(data.table)
library(qdap)
library(Hmisc)
getwsj.quotes <- function(Symbol)
{
MyUrl <- sprintf("https://quotes.wsj.com/AU/XASX/%s/financials/annual/income-statement", Symbol)
Symbol.Data <- GET(MyUrl)
x <- content(Symbol.Data, as = 'text')
wsj.tables <- sub('cr_dataTable cr_sub_capital', '\\1', x)
SymData <- readHTMLTable(wsj.tables)
return(SymData)
}
TickerList <- c("AMC")
SymbolDataList <- lapply(TickerList, FUN = getwsj.quotes)
MySymList <- data.frame()
MySymList <- SymbolDataList[[1]][[2]]
Search(MySymList, " Net Income")
问候斯蒂芬