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

如何用iloc判断DataFrame所有行是否满足指定条件?

解决方案

你的问题核心是要验证DataFrame最后rows行的所有行都满足条件,而非单一行。原代码存在两个问题:一是仅选取了倒数第rows行的单个值(而非最后rows行),二是没有检查所有行的条件是否都成立。

修改后的代码如下:

if position == -1:
    return (df.iloc[-rows:]['ABC'] < level).all()
elif position == 1:
    return (df.iloc[-rows:]['ABC'] > level).all()

关键修改说明:

  • 把df.iloc[-rows]['ABC']改为df.iloc[-rows:]['ABC']:添加冒号后,会选取DataFrame的最后rows行(而非单独一行),得到包含多行数据的Series。
  • 调用.all()方法:对布尔判断结果使用该方法后,只有当Series中所有元素都为True时,才会返回True;只要有一行不满足条件,就返回False。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 18:55:39