【问题标题】:In Julia find the indices of all missing values in one-dim array在 Julia 中找到一维数组中所有缺失值的索引
【发布时间】:2018-09-30 21:24:24
【问题描述】:

此堆栈link 显示如何为数组中的missing 值返回booleans

例如:

julia> A = [1, 2, 3, missing, 4, 5, 6, missing, 7, 8, missing, 9, 10]
13-element Array{Union{Missing, Int64},1}:
  1
  2
  3
   missing
  4
  5
  6
   missing
  7
  8
   missing
  9
 10

julia> ismissing.(A)
13-element BitArray{1}:
 false
 false
 false
  true
 false
 false
 false
  true
 false
 false
  true
 false
 false

你如何返回他们的索引?

【问题讨论】:

标签: julia missing-data


【解决方案1】:

使用相同的示例,您可以这样做:

julia> A = [1, 2, 3, missing, 4, 5, 6, missing, 7, 8, missing, 9, 10]
13-element Array{Union{Missing, Int64},1}:
  1
  2
  3
   missing
  4
  5
  6
   missing
  7
  8
   missing
  9
 10

# Below are the indices of the missing elements.
julia> findall(ismissing, A)
3-element Array{Int64,1}:
  4
  8
 11

您还可以查找是否有任何或所有元素为missing,以及第一个和最后一个索引:

julia> any(ismissing, A)
true

julia> all(ismissing, A)
false

julia> findfirst(ismissing, A)
4

julia> findlast(ismissing, A)
11

【讨论】:

  • x->ismissing(x)是多余的,而你应该只使用ismissing。因此,在您的示例中,将所有出现的x->ismissing(x) 替换为ismissing
  • @DNF 哇!我没想到会这么容易。感谢您的评论。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-05-28
  • 2021-04-28
  • 2019-07-05
  • 1970-01-01
  • 1970-01-01
  • 2016-09-19
  • 2015-01-26
相关资源
最近更新 更多