AxisArrays.jl icon indicating copy to clipboard operation
AxisArrays.jl copied to clipboard

Indexing order is not preserved when indexing by name

Open LilithHafner opened this issue 1 year ago • 1 comments

This seems pretty bad to me and I don't think it's documented. I'd like to call it a bug and fix it in minor release if that is acceptable.

julia> x = AxisArray([1,2], [:a, :b])
1-dimensional AxisArray{Int64,1,...} with axes:
    :row, [:a, :b]
And data, a 2-element Vector{Int64}:
 1
 2

julia> x[[:a, :b]] # Okay
1-dimensional AxisArray{Int64,1,...} with axes:
    :row, [:a, :b]
And data, a 2-element Vector{Int64}:
 1
 2

julia> x[[:b, :a]] # Should flip, but doesn't
1-dimensional AxisArray{Int64,1,...} with axes:
    :row, [:a, :b]
And data, a 2-element Vector{Int64}:
 1
 2

julia> x[[2, 1]] # Should flip and does
1-dimensional AxisArray{Int64,1,...} with axes:
    :row, [:b, :a]
And data, a 2-element Vector{Int64}:
 2
 1

Possibly related to #204

LilithHafner avatar Nov 17 '22 05:11 LilithHafner