在Python,numpy的阵列可以使用标准的逆转[::-1],即
A = np.diag(np.arange(1,3))
A[::, ::-1]
A[::-1]
A[::-1, ::-1]
Run Code Online (Sandbox Code Playgroud)
Julia不支持[::-1],该reverse方法仅适用于1D数组和1D列(默认情况下行为2D).
有没有我错过的替代方案?
Iai*_*ing 11
请尝试以下操作,这与numpy版本基本相同:
julia> X = rand(3,3)
3x3 Array{Float64,2}:
0.782622 0.996359 0.335781
0.719058 0.188848 0.985693
0.455355 0.910717 0.870187
julia> X[end:-1:1,end:-1:1]
3x3 Array{Float64,2}:
0.870187 0.910717 0.455355
0.985693 0.188848 0.719058
0.335781 0.996359 0.782622
Run Code Online (Sandbox Code Playgroud)
在Julia 1.0 中,对于列向量:
julia> reverse([1, 2, 3])
3-element Array{Int64,1}:
3
2
1
Run Code Online (Sandbox Code Playgroud)
对于您的行向量,只需声明您要翻转第二维:
julia> reverse([1 2 3], dims=2)
1×3 Array{Int64,2}:
3 2 1
Run Code Online (Sandbox Code Playgroud)