gpt4 book ai didi

python - 从 Julia 中另一个数组的特定列中获取子数组

转载 作者:行者123 更新时间:2023-12-04 08:32:03 26 4
gpt4 key购买 nike

我的目标是使用 Julia 从矩阵中提取某些列,然后将这些列变成一个新数组。例如,在 Python 中,如果我定义

x=np.array([[1,2,3,4],[5,6,7,8],[9,10,11,12],[13,14,15,16]])
y=[1,3]
x[:,y]
这给了我想要的结果:
array([[ 2,  4],
[6, 8],
[10, 12],
[14, 16]])
但是,在 Julia 中,如果我定义
x=[1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16]
y=[1 3]
view(x, :, [1 2])
它返回一个 4×1×2 数组,这对我正在做的事情来说是不可取的:
  4×1×2 view(::Array{Int64,2}, :, [1 2]) with eltype Int64:
[:, :, 1] =
1
5
9
13

[:, :, 2] =
2
6
10
14
如何编写上面的代码,使我的输出为 4x2 数组; IE。,
   1   2
5 6
9 10
13 14

最佳答案

您已经写了 [1 2]这是一个 1 行矩阵,应该写成 [1, 2]这是一个向量:

julia> x=[1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16]
4×4 Array{Int64,2}:
1 2 3 4
5 6 7 8
9 10 11 12
13 14 15 16

julia> view(x, :, [1, 2])
4×2 view(::Array{Int64,2}, :, [1, 2]) with eltype Int64:
1 2
5 6
9 10
13 14

关于python - 从 Julia 中另一个数组的特定列中获取子数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64968758/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com