【问题标题】:Subsetting a list of multidimensional arrays对多维数组列表进行子集化
【发布时间】:2016-01-09 13:03:44
【问题描述】:

我正在尝试对 3d 数组列表进行子集化,以返回矩阵列表。我认为答案涉及 lapply,但我发现的所有先前问题都因其他问题而变得复杂。

玩具示例:

x <- array(1:300, dim=c(20, 5, 3))
y <- array(301:600, dim=c(20, 5, 3))

list <- list(x ,y)

我希望将两个数组中的 [,,1] 元素放在一个新的矩阵列表中。

【问题讨论】:

    标签: arrays r lapply


    【解决方案1】:

    为了将来参考 - 尽量不要覆盖全局环境中的内置函数,例如 list

    回答您的问题:

    lapply(list(x,y), function(m) m[,,1])
    

    lapply 将遍历列表中的所有元素,将每个元素作为参数传递给您提供的函数。

    【讨论】:

    • lapply(list(x,y), '[', ,,1) 一样
    猜你喜欢
    • 2015-09-04
    • 2023-02-08
    • 1970-01-01
    • 2021-03-14
    • 1970-01-01
    • 1970-01-01
    • 2013-06-29
    • 1970-01-01
    • 2018-03-10
    相关资源
    最近更新 更多