【问题标题】:R arrays of 3 dimensions with different inner size具有不同内部大小的 3 维 R 数组
【发布时间】:2016-04-12 16:24:01
【问题描述】:

我有一个 R 列表(文档),其中前 2 个元素如下:

1. A. 1 2 5 6
   B. 5 6 2
   C. 7 8 1 2 3 5
2. A. 4 5 3 
   B. 1 2 3 5 4 7 8

我想要实现的是另一个大小相同但用零代替的列表:

1. A. 0 0 0 0
   B. 0 0 0 
   C. 0 0 0 0 0 0 
2. A. 0 0 0 
   B. 0 0 0 0 0 0 0

我试过了:

sapply(docs, function(x) rep(0, length(x)))

但该行为不是预期的,因为它考虑了外部列表的大小。你能帮帮我吗?

【问题讨论】:

    标签: arrays r list element


    【解决方案1】:

    您似乎有一个列表列表,即 docs 是一个包含列表 1 和 2 的列表,其中包含数字向量。如果是这种情况,请尝试以下操作:

     # create test list
     temp <- list("v1"=list("A"=1:4,"B"=5:7,"C"=1:8), "v2"=list("A"=1:3,"B"=5:10,"C"=3:8))
    
     # get a list of zeros with the same dimension
     answer <- lapply(temp, function(x) sapply(x, function(y) rep(0, length(y))))
    

    【讨论】:

    • 谢谢你,这是正确的方向。您能否提出一种创建列表 temp 的方法(例如通过循环)?因为这样它就不能泛化到文档类型的大矩阵。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-07-12
    • 1970-01-01
    • 2021-11-17
    • 2013-06-18
    • 1970-01-01
    • 2011-03-24
    相关资源
    最近更新 更多