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

多列DataFrame使用isnull().sum()统计空值仅显示部分列如何解决

问题解决方法

错误原因

  1. 你编写的for循环报错,是因为house.columns存储的是列名字符串,直接对字符串ncheck调用isnull()方法逻辑错误,应该访问DataFrame对应列再做统计。
  2. 直接运行house.isnull().sum()仅显示部分列,是pandas默认开启了输出缩略规则,列数/行数超过阈值时会自动用省略号折叠内容。

可用解决方案

方案1:修正for循环写法

for col in house.columns:
    # 同步打印列名和对应空值数
    print(col, house[col].isnull().sum())

方案2:修改pandas显示配置,直接输出全量统计结果

不用循环,仅修改全局显示参数即可让原生统计语句输出完整内容:

import pandas as pd
# 取消最大显示列数限制
pd.set_option('display.max_columns', None)
# 可选:同时取消最大显示行数限制,避免行数据多也被折叠
pd.set_option('display.max_rows', None)

# 此时运行原生统计语句即可返回所有列的空值结果
print(house.isnull().sum())

方案3:将统计结果转为字典/列表输出,规避折叠规则

# 转成字典格式,键为列名、值为对应空值数
null_count_dict = house.isnull().sum().to_dict()
print(null_count_dict)

补充说明

你提到DataFrame共有81列,但当前统计结果显示Length为80,可运行print(len(house.columns))核对实际列数,避免存在列被意外遗漏的情况。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.16 01:36:08