2016-07-26 65 views
2

我想使用字符矢量对象来轻松从xts对象中提取列数据。我只是试图将第一列名称分配给变量x,并使用mx$x来调用它,但它没用。有没有办法做到这一点?使用变量来调用R中的特定列?

library(xts) 
mx <- xts(rnorm(10), Sys.Date()+1:10) 
colnames(mx) <- "good" 
x <- "good" 
mx$x 
# NULL 
mx[x] 
# Error in if (length(c(year, month, day, hour, min, sec)) == 6 && c(year, : 
# missing value where TRUE/FALSE needed 
# In addition: Warning messages: 
# 1: In as_numeric(YYYY) : NAs introduced by coercion 
# 2: In as_numeric(YYYY) : NAs introduced by coercion 
mx[[x]] 
# Error in mx[[x]] : subscript out of bounds 
+1

我们有了对这个副本 - 或者一个文档链接? –

+2

'mx [,x]'...如果你想要一个列,可以使用drop(mx [,x])' –

+1

@BenBolker - 或者只是'mx [,x,drop = TRUE]' – thelatemail

回答

6

尽量mx[,x]

R> mx[,x] 
       good 
2016-07-27 -0.4565496 
2016-07-28 1.7436667 
2016-07-29 -0.9803478 
2016-07-30 -1.1954349 
2016-07-31 -0.7583871 
2016-08-01 -0.2496221 
2016-08-02 1.6043962 
2016-08-03 0.8236225 
2016-08-04 -0.5089324 
2016-08-05 1.1036047 
相关问题