gpt4 book ai didi

dataframe - 如何将缺失值插入到 Julia 的数据框中

转载 作者:行者123 更新时间:2023-12-02 09:13:22 24 4
gpt4 key购买 nike

df3[10, :A] = missing
df3[15, :B] = missing
df3[15, :C] = missing

甚至 NA 也不起作用。

我收到错误

MethodError: Cannot convert an object of type Missings.Missing to an object of type Int64 This may have arisen from a call to the constructor Int64(...), since type constructors fall back to convert methods. Stacktrace: [1] setindex!(::Array{Int64,1}, ::Missings.Missing, ::Int64) at ./array.jl:583 [2] insert_single_entry!(::DataFrames.DataFrame, ::Missings.Missing, ::Int64, ::Symbol) at /home/jrun/.julia/v0.6/DataFrames/src/dataframe/dataframe.jl:361 [3] setindex!(::DataFrames.DataFrame, ::Missings.Missing, ::Int64, ::Symbol) at /home/jrun/.julia/v0.6/DataFrames/src/dataframe/dataframe.jl:448 [4] include_string(::String, ::String) at ./loading.jl:522

最佳答案

使用allowmissing!函数。

julia> using DataFrames

julia> df = DataFrame(a=[1,2,3])
3×1 DataFrame
│ Row │ a │
│ │ Int64 │
├─────┼───────┤
│ 1 │ 1 │
│ 2 │ 2 │
│ 3 │ 3 │

julia> df.a[1] = missing
ERROR: MethodError: Cannot `convert` an object of type Missing to an object of type Int64

julia> allowmissing!(df)
3×1 DataFrame
│ Row │ a │
│ │ Int64⍰ │
├─────┼────────┤
│ 1 │ 1 │
│ 2 │ 2 │
│ 3 │ 3 │

julia> df.a[1] = missing
missing

julia> df
3×1 DataFrame
│ Row │ a │
│ │ Int64⍰ │
├─────┼─────────┤
│ 1 │ missing │
│ 2 │ 2 │
│ 3 │ 3 │

您可以查看 DataFrame 中的哪些列允许缺失,因为它们在列名称下键入名称后用 突出显示。

您还可以使用allowmissing函数创建新的DataFrame

这两个函数都可以选择接受要转换的列。

最后有一个 disallowmissing/disallowmissing! 对执行相反的操作(即从 eltype 中剥离可选的 Missing 联合code> 如果向量实际上不包含缺失值)。

关于dataframe - 如何将缺失值插入到 Julia 的数据框中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52716412/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com