【问题标题】:How to delete an array in an array of arrays in Julia如何在Julia中删除数组数组中的数组
【发布时间】:2021-12-07 20:53:14
【问题描述】:

我创建了包含三个 2D 数组的 3D 数组 me。例如,我想删除第二个数组 [:,:,2] 并将结果复制到一个名为 you 的新数组中。

我尝试了deleteat!(me, :,:,2),但它给了我一个错误。

me = reshape(1:(5*5*3), 5, 5, 3)

【问题讨论】:

    标签: julia


    【解决方案1】:

    首先,3-tensor 不是数组的数组,Julia 内置了 N 维数组支持。

    既然您已经认识到不复制就无法做到这一点(这正是deleteat!() 不起作用的原因),最简单的方法是:

    julia> me[:,:,[1,3]]
    5×5×2 Array{Int64, 3}:
    [:, :, 1] =
     1   6  11  16  21
     2   7  12  17  22
     3   8  13  18  23
     4   9  14  19  24
     5  10  15  20  25
    
    [:, :, 2] =
     51  56  61  66  71
     52  57  62  67  72
     53  58  63  68  73
     54  59  64  69  74
     55  60  65  70  75
    

    可以在以下位置找到系统地排除索引的其他方法: Exclude elements of Array based on index (Julia)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-17
      • 1970-01-01
      • 1970-01-01
      • 2021-11-30
      • 2017-10-16
      • 2013-10-28
      相关资源
      最近更新 更多