【问题标题】:R extracting members of lists and sub-lists (S4 class)R提取列表和子列表的成员(S4类)
【发布时间】:2013-07-31 13:08:27
【问题描述】:

我正在努力从列表中提取成员。下面显示的代码生成一个包含 5 个成员的列表,每个成员都有一个由两个成员组成的(子)列表。 我想提取每个子列表的第一个成员,即(W1 和 V1)。我该怎么做?

library(wavelets)

library(fGarch)

x<-rnorm(32)

spec.c <- garchSpec(model = list(omega=0.99, alpha=0.005, beta=0.005))

sim <- replicate(5, dwt(cumsum(garchSim(spec.c, n = 32)), filter="haar", 
                                    n.levels=2, boundary="reflection"))

非常感谢。

【问题讨论】:

    标签: r list extract s4 members


    【解决方案1】:

    试试这个...

    W <- lapply( sim , function(x) `@`( x , W)[[1]] )
    V <- lapply( sim , function(x) `@`( x , V)[[1]] )
    

    您将获得 5 个顶级列表中每个列表中的第一个 W 和 5 个顶级列表中每个列表中的第一个 V 的列表。

    @ 运算符用于访问S4 类型对象中的命名槽。

    【讨论】:

    • 这很好,但是如果我想计算(或者说,设置为零)所有 W1 而不从列表中提取它们怎么办?
    猜你喜欢
    • 2020-09-18
    • 1970-01-01
    • 2021-04-09
    • 1970-01-01
    • 2017-05-11
    • 2020-07-23
    • 1970-01-01
    • 1970-01-01
    • 2021-11-04
    相关资源
    最近更新 更多