将多系列动物园对象转换为单系列动物园对象列表
Convert a multi-series zoo object to a list of single series zoo objects
假设我有以下多系列动物园对象:
X.Z <- structure(c(0, 0.01, 0.01, 0, 0, 0.01), .Dim = c(3L, 2L), .Dimnames = list(
NULL, c("FTSE100", "FTALLSH")), index = structure(c(5844,
5845, 5846), class = "Date"), class = "zoo")
我想将 X.Z
转换为名为 FTSE100
和 FTALLSH
的 zoo
个对象的列表。我使用了以下内容:
X.Zs <- list()
for(i in 1:2){
X.Zs[[i]] <- X.Z[,i]
}
names(X.Zs) <- colnames(X.Z)
有没有比上面的'more'更有效的方法?
我的问题与
相反
你可以试试从这个 post:
X.Zs <- lapply(seq_len(dim(X.Z)[2L]), function(i) {x <- X.Z[, i]; class(x) <- 'zoo'; x})
names(X.Zs) <- dimnames(X.Z)[[2L]]
lapply
可以很简单的做到
X.Zs <- lapply(X.Z,"[")
假设我有以下多系列动物园对象:
X.Z <- structure(c(0, 0.01, 0.01, 0, 0, 0.01), .Dim = c(3L, 2L), .Dimnames = list(
NULL, c("FTSE100", "FTALLSH")), index = structure(c(5844,
5845, 5846), class = "Date"), class = "zoo")
我想将 X.Z
转换为名为 FTSE100
和 FTALLSH
的 zoo
个对象的列表。我使用了以下内容:
X.Zs <- list()
for(i in 1:2){
X.Zs[[i]] <- X.Z[,i]
}
names(X.Zs) <- colnames(X.Z)
有没有比上面的'more'更有效的方法?
我的问题与
你可以试试从这个 post:
X.Zs <- lapply(seq_len(dim(X.Z)[2L]), function(i) {x <- X.Z[, i]; class(x) <- 'zoo'; x})
names(X.Zs) <- dimnames(X.Z)[[2L]]
lapply
可以很简单的做到
X.Zs <- lapply(X.Z,"[")