如何在Julia的数组中删除一个数组?

3
我创建了一个包含三个二维数组的3D数组me。我想删除例如第二个数组[:,:,2]并将结果复制到一个名为you的新数组中。
我尝试了deleteat!(me, :,:,2),但是它给了我一个错误。
me = reshape(1:(5*5*3), 5, 5, 3)
1个回答

6

首先,一个三阶张量不是数组的数组,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

可以在以下链接中找到其他系统性排除索引的方法: 基于索引排除数组元素的方法(Julia)


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接