首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将多系列zoo对象转换为单系列zoo对象列表

将多系列zoo对象转换为单系列zoo对象列表
EN

Stack Overflow用户
提问于 2016-08-30 06:42:30
回答 2查看 267关注 0票数 2

假设我有以下多系列zoo对象:

代码语言:javascript
复制
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转换为名为FTSE100FTALLSHzoo对象列表。我使用了以下代码:

代码语言:javascript
复制
X.Zs <- list()
for(i in 1:2){
    X.Zs[[i]] <- X.Z[,i]
}
names(X.Zs) <- colnames(X.Z)

还有比上面更“有效”的方法吗?

我的问题与this question相反

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-08-30 11:37:19

lapply可以非常简单地做到这一点

X.Zs <- lapply(X.Z,"[")

票数 2
EN

Stack Overflow用户

发布于 2016-08-30 07:06:34

您可以尝试从这个post中获取类似这样的内容

代码语言:javascript
复制
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]]
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39216267

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档