Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在julia中按索引对数组进行切片_Julia - Fatal编程技术网

如何在julia中按索引对数组进行切片

如何在julia中按索引对数组进行切片,julia,Julia,这么说 a=[[12];[34];[56]] x是[1,2,1] 如何提取向量[1,4,5];即每行的index-x元素。您可以使用广播。使用Ref(a)避免通过a进行广播: julia> getindex.(Ref(a),1:length(x),x) 3-element Array{Int64,1}: 1 4 5 例如,1:size(a)[1]]中的i的[a[i,x[i]]可以工作,但似乎不合适。或者getindex.(eachrow(a),x)Super,或者根据reddit

这么说 a=[[12];[34];[56]] x是[1,2,1]
如何提取向量[1,4,5];即每行的index-x元素。

您可以使用广播。使用
Ref(a)
避免通过
a
进行广播:

julia>  getindex.(Ref(a),1:length(x),x)
3-element Array{Int64,1}:
 1
 4
 5

例如,1:size(a)[1]]中的i的[a[i,x[i]]可以工作,但似乎不合适。或者
getindex.(eachrow(a),x)
Super,或者根据reddit:getindex上的回复。(eachrow(a),x[:])@conor它应该是
x
,而不是
x[:]
。后者会产生不必要的副本。