-
Notifications
You must be signed in to change notification settings - Fork 52
Open
Description
Example:
julia> nt = (a=[1,2,3], b=[4,5,6])
(a = [1, 2, 3], b = [4, 5, 6])
julia> x2 = Tables.subset(nt, 1, view=true)
(a = 1, b = 4)
julia> x1 = Tables.subset(nt, 1, view=false)
(a = 1, b = 4)
julia> nt.a[1]=100
100
julia> x2
(a = 1, b = 4)
julia> x1
(a = 1, b = 4)
vs
julia> df = DataFrame(a=[1,2,3], b=[4,5,6])
3×2 DataFrame
Row │ a b
│ Int64 Int64
─────┼──────────────
1 │ 1 4
2 │ 2 5
3 │ 3 6
julia> x1 = Tables.subset(df, 1, view=false)
Tables.ColumnsRow{DataFrames.DataFrameColumns{DataFrame}}: (a = 1, b = 4)
julia> x2 = Tables.subset(df, 1, view=true)
Tables.ColumnsRow{DataFrames.DataFrameColumns{DataFrame}}: (a = 1, b = 4)
julia> df.a[1] = 100
100
julia> x1
Tables.ColumnsRow{DataFrames.DataFrameColumns{DataFrame}}: (a = 100, b = 4)
julia> x2
Tables.ColumnsRow{DataFrames.DataFrameColumns{DataFrame}}: (a = 100, b = 4)
So we see that view kwarg when returning row is not respected and is not handled consistently.
Metadata
Metadata
Assignees
Labels
No labels