gpt4 book ai didi

julia - 如何在 julia 中创建特定长度的缺失值向量?

转载 作者:行者123 更新时间:2023-12-03 15:27:00 25 4
gpt4 key购买 nike

R我可以用所有 NA_real_ 创建一个长度为 5 的向量值(value)观:

x <- 1:5
length(x)
## [1] 5
rep(NA_real_, times = length(x))
## [1] NA NA NA NA NA
我如何在 julia 中做同样的事情?我可以创建一个包含零的向量,但我不知道如何在其中放置缺失值:
v = Vector{Float64}(undef, 5)
## 5-element Array{Float64,1}:
0.0
0.0
0.0
0.0
0.0

最佳答案

Julia 中的缺失值称为 missing .它是类型 Missing 的单例.您可以创建一个缺失值向量,如下所示:

v = Vector{Missing}(undef, 5)
# 5-element Array{Missing,1}:
# missing
# missing
# missing
# missing
# missing
或者,更方便地使用 fill :
v = fill(missing, 5)
但是请注意,与 R 不同的是, Missing不与其他数字类型共享类型:它是它自己的类型。注意当您尝试放置 Float64 时会发生什么成 Missing 的向量s:
v = fill(missing, 5)
# 5-element Array{Missing,1}:
# missing
# missing
# missing
# missing
# missing

v[1] = 3.14
# ERROR: MethodError: convert(::Type{Union{}}, ::Float64) is ambiguous.
这意味着如果您想创建一个仅包含缺失值的向量,但您希望它也能够包含一个数值,例如 Float64 ,你应该明确:
v = convert(Array{Union{Float64,Missing}}, v)
# 5-element Array{Union{Missing, Float64},1}:
# missing
# missing
# missing
# missing
# missing

v[1] = 3.14;
v
# 5-element Array{Union{Missing, Float64},1}:
# 3.14
# missing
# missing
# missing
# missing

关于julia - 如何在 julia 中创建特定长度的缺失值向量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66736591/

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