【发布时间】:2019-06-19 12:59:48
【问题描述】:
我正在尝试创建一个具有 1 行和 10 列的空 DataFrame。在 Julia 0.5 中我曾经这样做:df = DataFrame(Any,1,10)
当我尝试在 Julia 1.1.1 中执行此操作时,我收到此警告
Warning: 'DataFrame(t::Type, nrows::Integer,
ncols::Integer)' is deprecated, use
'DataFrame(Matrix{t}(undef, nrows, ncols))'
instead.
和错误:
ERROR: LoadError: UndefRefError: access to undefined reference
Stacktrace:
[1] getindex at ./array.jl:730 [inlined]
[2] macro expansion at ./multidimensional.jl:671 [inlined]
[3] macro expansion at ./cartesian.jl:64 [inlined]
[4] macro expansion at ./multidimensional.jl:666 [inlined]
[5] _unsafe_getindex! at ./multidimensional.jl:662 [inlined]
[6] _unsafe_getindex(::IndexLinear, ::Array{Any,2}, ::Base.Slice{Base.OneTo{Int64}}, ::Int64) at ./multidimensional.jl:656
[7] getindex at ./multidimensional.jl:642 [inlined]
[8] #DataFrame#101(::Bool, ::Type, ::Array{Any,2}, ::Array{Symbol,1}) at /home/cambier/julia-1.1.1/Packages/packages/DataFrames/ CZrca/src/dataframe/dataframe.jl:206
[9] Type at /home/cambier/julia-1.1.1/Packages/packages/DataFrames/CZrca/src/dataframe/dataframe.jl:206 [inlined] (repeats 2 tim es)
[10] DataFrame(::Type, ::Int64, ::Int64) at ./deprecated.jl:57
所以我尝试了df = DataFrame(Matrix{Any}(undef,1,10))
,但我仍然收到UndefRefError: access to undefined reference 错误。
那么正确的做法是什么?
【问题讨论】: