从现金流量中获取特定行
Getting specific line from Cash Flow
我正在尝试使用 R 中的 getFinancials 函数从现金流中获取数据。
library(quantmod)
s <- c("AAPL","GOOG","IBM","GS","AMZN","GE")
fin <- lapply(s, getFinancials, auto.assign=FALSE)
names(fin) <- s
但是当我尝试使用
获取特定行时
fin$AAPL$CF$A["Cash from Operating Activities"]
fin$AAPL$CF$A["Capital Expenditures"]
我得到了 NA return。如何从现金流量中获取这些特定行?
因为 fin$AAPL$CF$A
是一个矩阵,所以你需要在名称后加一个逗号,因为你要的是 row 名称。没有逗号,您要求的是一个名为 "Cash from Operating Activities" 的向量元素,并且由于我们有一个矩阵,因此各个元素未命名。
class(fin$AAPL$CF$A)
# [1] "matrix"
"Cash from Operating Activities" %in% rownames(fin$AAPL$CF$A)
# [1] TRUE
## no comma - NA because "Cash from Operating Activities" is not a named vector element
fin$AAPL$CF$A["Cash from Operating Activities"]
# [1] NA
用
可以更容易地说明这一点
x <- 1
x["x"]
# [1] NA
因为 x
没有命名元素 "x"
,我们得到 NA。您想要以下内容。
## with comma - asking for the row "Cash from Operating Activities"
fin$AAPL$CF$A["Cash from Operating Activities", ]
# 2014-09-27 2013-09-28 2012-09-29 2011-09-24
# 59713 53666 50856 37529
由于这些是矩阵,行在逗号左侧,列在右侧,单个命名元素没有逗号。
我正在尝试使用 R 中的 getFinancials 函数从现金流中获取数据。
library(quantmod)
s <- c("AAPL","GOOG","IBM","GS","AMZN","GE")
fin <- lapply(s, getFinancials, auto.assign=FALSE)
names(fin) <- s
但是当我尝试使用
获取特定行时fin$AAPL$CF$A["Cash from Operating Activities"]
fin$AAPL$CF$A["Capital Expenditures"]
我得到了 NA return。如何从现金流量中获取这些特定行?
因为 fin$AAPL$CF$A
是一个矩阵,所以你需要在名称后加一个逗号,因为你要的是 row 名称。没有逗号,您要求的是一个名为 "Cash from Operating Activities" 的向量元素,并且由于我们有一个矩阵,因此各个元素未命名。
class(fin$AAPL$CF$A)
# [1] "matrix"
"Cash from Operating Activities" %in% rownames(fin$AAPL$CF$A)
# [1] TRUE
## no comma - NA because "Cash from Operating Activities" is not a named vector element
fin$AAPL$CF$A["Cash from Operating Activities"]
# [1] NA
用
可以更容易地说明这一点x <- 1
x["x"]
# [1] NA
因为 x
没有命名元素 "x"
,我们得到 NA。您想要以下内容。
## with comma - asking for the row "Cash from Operating Activities"
fin$AAPL$CF$A["Cash from Operating Activities", ]
# 2014-09-27 2013-09-28 2012-09-29 2011-09-24
# 59713 53666 50856 37529
由于这些是矩阵,行在逗号左侧,列在右侧,单个命名元素没有逗号。