You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Julia中统计DataFrame各列的missing值数量?

Julia统计DataFrame各列缺失值数量

给定如下DataFrame:

using DataFrames
df = DataFrame(i=1:5,
               x=[missing, 4, missing, 2, 1],
               y=[missing, missing, "c", "d", "e"])

需要统计每一列的missing值数量,预期结果为:i列0个,x列2个,y列2个。以下是几种实用实现方法:

方法1:遍历列统计(灵活自定义)

通过遍历DataFrame的每一列,用count(ismissing, col)统计缺失值数量,再关联列名得到结果:

# 统计每列缺失数
missing_counts = [count(ismissing, col) for col in eachcol(df)]
# 绑定列名与结果
result = Dict(zip(names(df), missing_counts))

# 打印结果
println(result)
# 输出:Dict(:i => 0, :x => 2, :y => 2)

方法2:用combine生成结果DataFrame

使用DataFrames包的combine函数,直接生成包含列名和对应缺失数的新DataFrame,适合后续数据处理:

missing_df = combine(df, names(df) .=> (col -> count(ismissing, col)) .=> :missing_count)

# 查看结果
println(missing_df)
# 输出:
# 3×2 DataFrame
#  Row │ variable  missing_count
#      │ Symbol    Int64
# ─────┼────────────────────────
#    1 │ i                 0
#    2 │ x                 2
#    3 │ y                 2

方法3:用describe快速查看缺失数

describe函数可以直接输出包含缺失值数量在内的列统计信息,适合快速核验:

describe(df, :nmissing)

# 输出:
# 3×2 DataFrame
#  Row │ variable  nmissing
#      │ Symbol    Int64
# ─────┼───────────────────
#    1 │ i              0
#    2 │ x              2
#    3 │ y              2

内容的提问来源于stack exchange,提问作者Quinten

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 14:35:11