我有一个可以采取Float64和Missing值的数组:
local x::Array{Union{Float64, Missing}, 1} = [1.0, missing, 3.0]
我可以Float64使用该append!函数添加更多值,但我不能以missing这种方式添加值.我收到以下错误:
julia> append!(x, missing)
ERROR: MethodError: no method matching length(::Missing)
Run Code Online (Sandbox Code Playgroud)
missing向此数组添加值的正确方法是什么?
是的,你是对的,push!应该使用.此外,您的代码不需要如此冗长:
julia> x = [1.0, missing, 3.0]
3-element Array{Union{Missing, Float64},1}:
1.0
missing
3.0
julia> y = Union{Missing, Float64}[]
0-element Array{Union{Missing, Float64},1}
julia> push!(y,1);
julia> push!(y,missing)
2-element Array{Union{Missing, Float64},1}:
1.0
missing
Run Code Online (Sandbox Code Playgroud)
而且,可以使用Array{Union{Float64, Missing}, 1}更短且更可读的版本Vector{Union{Float64, Missing}}.