如何在 Julia 中删除数组数组中的数组

How to delete an array in an array of arrays in Julia

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

的新数组

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

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

首先,3张量不是数组的数组,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

系统排除索引的其他方法可以在以下位置找到: