Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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
Arrays 访问矩阵中第一列之前的列的值?_Arrays_Julia - Fatal编程技术网

Arrays 访问矩阵中第一列之前的列的值?

Arrays 访问矩阵中第一列之前的列的值?,arrays,julia,Arrays,Julia,我试图访问前几列的元素,而不是第一列 例如,在python中,如果我尝试访问第一列0之前的元素,它将返回一个空数组 将numpy导入为np x=np.矩阵([[1,2,10], [ 1, 4, 2], [ 2, 3, 2], [ 2, 3, 6]]) a=x[:,0] 打印('\n a是\n',a) b=x[:,:0] 打印('\n b是\n',b) 输出:--> a是 [[1] [1] [2] [2]] b是 [] 但是茱莉亚没有这样做 我在朱莉娅的审判: array = [1 2

我试图访问前几列的元素,而不是第一列

例如,在python中,如果我尝试访问第一列
0
之前的元素,它将返回一个
空数组

将numpy导入为np
x=np.矩阵([[1,2,10],
[ 1,  4, 2],
[ 2,  3,  2],
[ 2,  3,  6]])
a=x[:,0]
打印('\n a是\n',a)
b=x[:,:0]
打印('\n b是\n',b)
输出:-->
a是
[[1]
[1]
[2]
[2]]
b是
[]
但是茱莉亚没有这样做

我在朱莉娅的审判:

array = [1 2 3;3 4 5;2 3 4;1 2 3]
a = array[:, 1]
b = array[:, 1-1]

Output :-->

BoundsError: attempt to access 4×3 Array{Int64,2} at index [1:4, 0]

Stacktrace:
 [1] throw_boundserror(::Array{Int64,2}, ::Tuple{Base.Slice{Base.OneTo{Int64}},Int64}) at .\abstractarray.jl:541
 [2] checkbounds at .\abstractarray.jl:506 [inlined]
 [3] _getindex at .\multidimensional.jl:742 [inlined]
 [4] getindex(::Array{Int64,2}, ::Function, ::Int64) at .\abstractarray.jl:1060
 [5] top-level scope at In[1166]:1
 [6] include_string(::Function, ::Module, ::String, ::String) at .\loading.jl:1091
然而,为了复制这样的操作,我尝试实现
try-and-catch
方法,并在循环中使用它来查看当我尝试访问不同的列时会发生什么。输出总是一个空数组

for i in 1:3
    try
       b = array[:, :i-1] 
    catch 
        b = []
    end
    println("\b b in $i is $b")
end

Output :--->

 b in 1 is Any[]
 b in 2 is Any[]
 b in 3 is Any[]

我可以知道如何从
第一列-1
最后一列-1
访问行元素,其中
第一列-1
返回一个空数组,而rest返回矩阵中的数据。

我的问题的答案由@ettersion julia Discussion提供,我在这里发布它以供参考。请按照评论中提到的链接访问对话页面

回答


我已将此问题发布在对话上,请参考以下链接:
julia> array = [1 2 3;3 4 5;2 3 4;1 2 3]
4×3 Matrix{Int64}:
 1  2  3
 3  4  5
 2  3  4
 1  2  3

julia> array[:, 1:0]
4×0 Matrix{Int64}