Dataframe 在Julia数据帧中拆分字符串会导致错误
根据DataFrames.jl的作者所说,以下代码行应该可以工作Dataframe 在Julia数据帧中拆分字符串会导致错误,dataframe,julia,Dataframe,Julia,根据DataFrames.jl的作者所说,以下代码行应该可以工作select(df,:name=>ByRow(split)=>[:firsname,:lastname])。然而,我犯了一个错误 我是不是忽略了什么 using DataFrames using CSV using Pkg df = DataFrame(id = 1:6, name = ["Aaron Aardvark", "Belen Barboza&qu
select(df,:name=>ByRow(split)=>[:firsname,:lastname])
。然而,我犯了一个错误
我是不是忽略了什么
using DataFrames
using CSV
using Pkg
df = DataFrame(id = 1:6,
name = ["Aaron Aardvark", "Belen Barboza",
"春 陈", "Даниил Дубов",
"Elżbieta Elbląg", "Felipe Fittipaldi"])
select(df, :name => ByRow(split) => [:firsname, :lastname])
# expected this
6×2 DataFrame
Row │ firsname lastname
│ SubStrin… SubStrin…
─────┼───────────────────────
1 │ Aaron Aardvark
2 │ Belen Barboza
3 │ 春 陈
4 │ Даниил Дубов
5 │ Elżbieta Elbląg
6 │ Felipe Fittipaldi
# but got this
ArgumentError: Unrecognized column selector: :name => (ByRow{typeof(split)}(split) => [:firsname, :lastname])
in top-level scope at Repos/Thesis/src/scripts/stackoverflow.jl:23
in select at DataFrames/GtZ1l/src/abstractdataframe/selection.jl:493
in #select#296 at DataFrames/GtZ1l/src/abstractdataframe/selection.jl:493
in manipulate##kw at DataFrames/GtZ1l/src/abstractdataframe/selection.jl:558
in #manipulate#301 at DataFrames/GtZ1l/src/abstractdataframe/selection.jl:566
in collect at base/array.jl:686
in iterate at base/generator.jl:47
in at base/none
in normalize_selection at DataFrames/GtZ1l/src/abstractdataframe/selection.jl:42
# However this does work
select(df, :name => ByRow(split))
6x1 DataFrame
│ Row │ name_split │
│ │ Array… │
├─────┼──────────────────────────┤
│ 1 │ ["Aaron", "Aardvark"] │
│ 2 │ ["Belen", "Barboza"] │
│ 3 │ ["春", "陈"] │
│ 4 │ ["Даниил", "Дубов"] │
│ 5 │ ["Elżbieta", "Elbląg"] │
│ 6 │ ["Felipe", "Fittipaldi"] │
Pkg.status()
> [336ed68f] CSV v0.8.3
> [a93c6f00] DataFrames v0.22.5
VERSION
> v"1.5.3"
在重新加载我的环境后,它确实工作了。该命令与
DataFrames@0.22.5
。但我忘记了在切换环境后重新编译包(由于与其他包的兼容性问题,我加载了一个旧版本)