好的,我有像
这样的xts对象bid1, bid2, bid3, ..., bid30
它们是日内货币汇率数据。 例如,
head(bid1)
返回
..2
2014-09-01 00:00:00 104.165
2014-09-01 00:00:01 104.352
2014-09-01 00:00:02 105.239
2014-09-01 00:00:03 104.891
2014-09-01 00:00:04 105.587
2014-09-01 00:00:05 105.028
我想将它们改为像
这样的载体vbid1, vbid2, vbid3, ..., vbid30
我想出了像
这样的编码i <- 1
for (i in 1:30)
{
vbid[i] <- as.vector(bid[i])
i <- i+1
}
但它没有用。 它没有返回任何错误或警告,但当我检查时
head(vbid1)
它说没有名为'vbid1'的对象
有人能告诉我这样做的好方法吗? 谢谢你的帮助!
答案 0 :(得分:0)
你可以尝试
for(i in seq_along(x)){
assign(paste0('v',x[i]), as.vector(get(x[i])))
}
vbid1
#[1] 1 2 3 4 5
vbid2
#[1] 6 7 8 9 10
或使用list2env
list2env(setNames(lapply(mget(x), as.vector),
paste0('v',x)), envir=.GlobalEnv)
<environment: R_GlobalEnv>
n <- 3
library(xts)
bid1 <- xts(1:5, order.by=seq(Sys.Date(),length.out=5, by='1 day'))
bid2 <- xts(6:10,order.by=seq(Sys.Date(),length.out=5, by='1 day'))
bid3 <- xts(1:15, order.by=seq(Sys.Date(),length.out=15, by='1 day'))
x <- paste0('bid', 1:n)