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

如何用Pandas统计指定列满足条件的数量并筛选结果

一步实现Pandas行筛选需求

直接用以下一行代码就能完成你的需求,无需中间列:

filtered_df = df[(df[['colB', 'colC', 'colD', 'colE']] > 0).sum(axis=1) > 1]

代码逻辑拆解:

  • df[['colB', 'colC', 'colD', 'colE']] > 0:对指定列的每个元素做大于0的判断,生成由布尔值组成的DataFrame
  • .sum(axis=1):按行求和(布尔值True等价于1,False等价于0),得到每行中数值大于0的列的数量
  • > 1:以"数量大于1"为筛选条件,直接返回符合要求的原DataFrame子集

这个写法把统计和筛选合并成一步,省去了新增临时列再删除的操作,代码更简洁高效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.26 14:30:52