如何正确计算数据集整体缺失值占比 验证现有计算方法正确性
全数据集缺失值占比计算方法验证
你的计算逻辑完全正确,最终得到的32.69%缺失率结果是准确的,各步骤验证如下:
- 总数据量计算:pandas中
df.shape返回的元组格式为(样本行数, 特征列数),你的数据集共130行、20列,总元素数为130*20=2600,计算无误。 - 缺失值总数统计:
df.isnull().sum().sum()的执行逻辑是先逐单元格判断是否为空值,先按列聚合统计每列的缺失值数量,再对所有列的缺失值求和,得到的就是全表空值总个数,你统计得到的850是有效结果。 - 占比计算:全表缺失值占比 = 全表缺失值总个数 / 数据集总元素数 * 100%,代入数值计算得到的32.69%结果准确。
你也可以直接用pandas内置属性写一行代码完成计算,不需要手动计算总元素数:
# 计算全表缺失值占比,保留两位小数输出 missing_rate = (df.isnull().sum().sum() / df.size) * 100 print(f"全数据集缺失值占比:{missing_rate:.2f}%")
代码中df.size会直接返回DataFrame的总元素个数,和手动计算行数乘列数的结果完全一致。
内容的提问来源于stack exchange,提问作者Encipher
相关产品推荐
相关产品推荐

