假设我有一个带有数字元素的 DataFrame。我想检查所有元素是否为非负数。我可以做类似的事情:
df .> 0
这导致一个和零的DataFrame。如何将其减少为一个真/假值?
假设我有一个带有数字元素的 DataFrame。我想检查所有元素是否为非负数。我可以做类似的事情:
df .> 0
这导致一个和零的DataFrame。如何将其减少为一个真/假值?
几乎不分配且有效的方法是:
all(all.(>(0), eachcol(df)))
或者
all(all.(x -> isless(0, x), eachcol(df)))
取决于您要如何处理missing
值。
这是差异的示例:
julia> df = DataFrame(a=[1, missing], b=1:2)
2×2 DataFrame
Row │ a b
│ Int64? Int64
─────┼────────────────
1 │ 1 1
2 │ missing 2
julia> all(all.(>(0), eachcol(df)))
missing
julia> all(all.(x -> isless(0, x), eachcol(df)))
true
与isless
missing
value 一样,它被视为大于任何其他值。