subset函数为什么在DataFrames找不到

你好! 我在using DataFrames 后想使用subset函数,报subset没有定义,想请指一下该如何解决。

julia> using DataFrames

julia> function grades_2020()
               dc = Dict("name" => ["Sally", "Bob", "Alice", "Hank"], "grade_2020" => [1.0, 5.0, 8.5, 4.0])
               DataFrame(dc)
       end;

julia> function grades_2021()
           dc = Dict("name" => ["Sally", "Bob2", "Alice", "Hank"], "grade_2021" => [9.5, 9.5, 8.5, 6.0])
           DataFrame(dc)
       end;

julia> subset(grades_2020(), :name => ByRow(name -> name == "Alice"))
ERROR: UndefVarError: subset not defined
Stacktrace:
 [1] top-level scope
   @ REPL[4]:1

这个函数在文档里能找到吗,如果能的话,你试试 DataFrames.subset

可以用

julia> using DataFrames

julia> function grades_2020()
       end
grades_2020 (generic function with 1 method)

julia> function grades_2020()
               dc = Dict("name" => ["Sally", "Bob", "Alice", "Hank"], "grade_2020" => [1.0, 5.0, 8.5, 4.0])
               DataFrame(dc)
       end;

julia> subset(grades_2020(), :name => ByRow(name -> name == "Alice"))
1×2 DataFrame
 Row │ grade_2020  name
     │ Float64     String
─────┼────────────────────
   1 │        8.5  Alice

我用的是julia 1.8.2 版本的,DataFrames 下面没subset好奇怪,你是用julia什么版本的

会不会是 DataFrames 版本的问题,你用的什么版本?

我的是1.8.0版本

pkg> status DataFrames

看版本

假如我从git上面下载DataFrames,git上面DataFrames.jl是包含subset这个函数的,不知道怎么加载并替换现有环境的DataFrames.
image

你先 rm DataFrames ,然后 add DataFrame的git地址

收到,非常感谢你们!

尝试很多次都无法把DataFrames.jl包打入当前环境,假设我先把整个DataFrams.jl下载到本地,那我怎么把它放入到环境中去啊,请你给我指导一下,最好有点操作流程,我是初学者对这些非常陌生,束手无策,谢谢!

add GitHub - JuliaData/DataFrames.jl: In-memory tabular data in Julia

没这个必要,你现在正常下 add DataFrames 应该可以下到 1.4.4 版本的