小编Dor*_* Ho的帖子

如何在Julia的矩阵中找到值的位置?

我正在使用这样find的3D矩阵A:

julia> find(A.==1)
2-element Array{Int64,1}:
1
234
4567
Run Code Online (Sandbox Code Playgroud)

朱莉娅给我的位置作为索引而不是索引数组.例如,它返回234而不是(1,2,1).

我看了这个问题,但我的矩阵非常大,形状为(360,360,360).我不能使用那里建议的方法.

我试着研究它的索引模式并使用我编码的函数对其进行转换:

function cmf_p(matrix)
      for a=1:length(matrix);
          aa=matrix[a]
          rd_u_m=ceil(aa/(360^2))
          rd_d_m=floor(aa/(360^2)-1)
          rd_d_t=(aa-rd_d_m*360)/360^2   
          rd_d_p=aa-rd_d_m*360^2-floor(rd_d_t)*360
          println(rd_u_m);
          println(ceil(rd_d_t)*360);
          println(ceil(aa-rd_d_m*360^2-floor(rd_d_t)*360))
      end    
end
Run Code Online (Sandbox Code Playgroud)

但它给了我错误的结果.

如何使用索引并将其转换为我想要的位置?

arrays matrix julia

3
推荐指数
1
解决办法
381
查看次数

标签 统计

arrays ×1

julia ×1

matrix ×1