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

统计DataFrame所有列中'?'出现次数时for循环报错如何解决

错误原因

  • 当你使用dataset.列名的点语法访问DataFrame列时,pandas会将列名当做固定属性名解析,不会识别为for循环中定义的column变量。你写dataset.column时,程序会直接去找名为column的列,你的数据集里没有这一列,所以抛出属性不存在的错误。

修正代码

访问动态变量对应的列,需要改用中括号语法,代码修改如下:

for column in dataset:
    # 输出列名和对应?的出现次数
    print(f"{column}: {dataset[column][dataset[column] == '?'].count()}")

你也可以使用更高效的pandas向量化操作,无需写循环就能直接得到所有列的统计结果:

(dataset == '?').sum()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 01:36:00