在 r 中使用 getFin 时如何使用多个代码?
How do I use multiple tickers when using getFin in r?
我希望能够生成显示 select 财务报表行项目和财务报表比率(例如收入、运营支出、EBITDA、企业价值)的表格。我正在尝试让 getFin 接受代码列表。
library(quantmod)
library(xts)
ticker <- c("MS", "GS", "CS")
ticker1 <- getSymbols(ticker)
getFin(ticker1) #env.class
income<-viewFin(ticker1, "IS","A") # annual income statement
balancesheet<-viewFin(ticker1,"BS","A") # annual balance sheet
但是,getFin 仅将 MS 代码识别为 MS.f,因此 GS.f 和 CS.f 不会添加到环境中。这也可以防止将收入和资产负债表添加到环境中。
让我知道如何解决这个问题。感谢您的帮助。
将数据加载到您创建的环境中,而不是全局环境中。然后使用 eapply
遍历环境中的所有对象并在每个对象上调用 viewFin
。
e <- new.env()
getFin(paste0(ticker,collapse=";"), env=e)
income <- eapply(e, viewFin, type="IS", period="A")
balancesheet <- eapply(e, viewFin, type="BS", period="A")
income
和 balancesheet
将是 ticker
指定的每个对象的相关语句列表。
我希望能够生成显示 select 财务报表行项目和财务报表比率(例如收入、运营支出、EBITDA、企业价值)的表格。我正在尝试让 getFin 接受代码列表。
library(quantmod)
library(xts)
ticker <- c("MS", "GS", "CS")
ticker1 <- getSymbols(ticker)
getFin(ticker1) #env.class
income<-viewFin(ticker1, "IS","A") # annual income statement
balancesheet<-viewFin(ticker1,"BS","A") # annual balance sheet
但是,getFin 仅将 MS 代码识别为 MS.f,因此 GS.f 和 CS.f 不会添加到环境中。这也可以防止将收入和资产负债表添加到环境中。
让我知道如何解决这个问题。感谢您的帮助。
将数据加载到您创建的环境中,而不是全局环境中。然后使用 eapply
遍历环境中的所有对象并在每个对象上调用 viewFin
。
e <- new.env()
getFin(paste0(ticker,collapse=";"), env=e)
income <- eapply(e, viewFin, type="IS", period="A")
balancesheet <- eapply(e, viewFin, type="BS", period="A")
income
和 balancesheet
将是 ticker
指定的每个对象的相关语句列表。