有没有一种方法可以使用Quantmod从矩阵中提取元素?

时间:2020-09-05 21:36:49

标签: r extract element

第一次来这里,进入R。我有一个问题,我必须创建一个包含两个元素的“股票”列表;第一个元素是带有三只股票行情自动收录器的分类向量。第二个元素是具有5行3列的矩阵。每个列分别具有一只股票的五天市场收盘价。

library(quantmod)

getSymbols(c("AMD","INTC","MU"), from = "2020-08-31", to="2020-9-5")
stocks = data.frame(cbind(AMD[,4], INTC[,4], MU[,4]))
getSymbols (c("AMD","INTC","MU"), from = "2020-08-31", to="2020-9-5")
x[2]

output:      INTC.Open INTC.High INTC.Low INTC.Close INTC.Volume INTC.Adjusted
2020-09-01     50.91        51    50.22      50.79    30522700         50.79

stocks
x[2]

           INTC.Close
2020-08-31      50.95
2020-09-01      50.79
2020-09-02      52.25
2020-09-03      50.39
2020-09-04      50.08

enter image description here

如果我没记错的话,答案应该是50.79美元的数值,只是不确定如何提取它。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

xts对象是具有属性的matrix

class(INTC[, "INTC.Close"])
#[1] "xts" "zoo"

is.matrix(INTC[, "INTC.Close"])
#[1] TRUE

我们可以使用as.numeric

as.numeric(INTC[, "INTC.Close"][2])
#[1] 50.79

具有索引日期和列名称的子集

as.numeric(INTC["2020-09-01", "INTC.Close"])
#[1] 50.79

或与as.vector

as.vector(INTC["2020-09-01", "INTC.Close"])
#[1] 50.79