【问题标题】:array in R using listsR中的数组使用列表
【发布时间】:2017-01-23 02:05:49
【问题描述】:

我有两个使用 list3 = list(1,2,3,4)list4 = list(5,6,7,8) 创建的列表。

我创建了一个数组:

myarray <- array(list3, list4)

我得到一个 56*5*6 数组的输出。无法理解,为什么会这样?

【问题讨论】:

  • 你应该阅读数组文档?array第一个参数是数据第二个参数是维度
  • 糟糕! bcoz 在维度中使用列表,我得到 (7*8)*5*6 数组作为输出。谢谢!!
  • 您能否更具体地了解您期望的输出?

标签: arrays r list


【解决方案1】:

像这样取消列出和连接:

c(unlist(list3), unlist(list4))

【讨论】:

    【解决方案2】:

    也许是这样的

    list3 <- list(1,2,3,4)
    list4 <- list(5,6,7,8)
    listall <- append(list3, list4)
    array(listall, c(2, length(listall) / 2))
    

    输出

         [,1] [,2] [,3] [,4]
    [1,] 1    3    5    7   
    [2,] 2    4    6    8   
    

    关于您的输出背后的原因,请查看文档

    ?array
    
    Usage
    array(data = NA, dim = length(data), dimnames = NULL)
    ...
    

    因此,您将第二个列表(示例中的list4)作为dim 参数传递

    【讨论】:

      猜你喜欢
      • 2021-08-17
      • 1970-01-01
      • 1970-01-01
      • 2018-10-16
      • 1970-01-01
      • 2020-05-15
      • 2020-05-10
      • 2021-11-12
      • 2020-03-16
      相关资源
      最近更新 更多