使用变量调用R中的特定列?

时间:2016-07-26 21:42:46

标签: r xts

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

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 个答案:

答案 0 :(得分:9)

尝试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