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

为何Pandas query筛选后的DataFrame循环仅输出列名而非数据行?

解决Pandas遍历筛选后DataFrame只输出列名的问题

直接遍历Pandas的DataFrame对象时,默认迭代的是列名,而非数据行——这就是你遍历nan_val_array只看到列名,看不到16000行数据的原因。

以下是几种正确遍历数据行的方法:

方法1:用iterrows()遍历行(带索引)

nan_val_array = data.query("year_of_release.isna()")

# index为行索引,row是存储该行数据的Series对象
for index, row in nan_val_array.iterrows():
    print(row)
    # 如需单独获取某列值,比如name列:print(row['name'])

方法2:用itertuples()遍历行(效率更高)

nan_val_array = data.query("year_of_release.isna()")

# row为命名元组,可通过属性直接访问列值
for row in nan_val_array.itertuples():
    print(row)
    # 例如获取platform列:print(row.platform)

方法3:直接遍历行的数组形式

nan_val_array = data.query("year_of_release.isna()")

# 每行以列表/数组形式返回
for row in nan_val_array.values:
    print(row)

如果只是想快速查看筛选结果,无需遍历,直接打印nan_val_array即可看到数据预览,或用nan_val_array.head()查看前5行数据。

内容的提问来源于stack exchange,提问作者Maks V. Zaikin

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.11 12:34:56