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

Python datetime模块昼夜划分报错:Series真值歧义问题求解

Pandas布尔掩码逻辑判断报错修复

错误原因

你使用了Python原生的or运算符组合Pandas Series的布尔条件,但or是标量级逻辑运算符,它会试图将整个Series当作单一布尔值判断真假,而Pandas Series包含多元素,这种判断不明确,因此抛出The truth value of a Series is ambiguous错误。

Pandas需要用元素级逻辑运算符处理逐元素判断:

  • 逻辑或:|
  • 逻辑与:&
  • 逻辑非:~

正确代码

筛选夜间数据

nighttime = traffic[(traffic['date_time'].dt.hour >= 19) | (traffic['date_time'].dt.hour < 7)]

筛选白天数据(7:00-19:00)

daytime = traffic[(traffic['date_time'].dt.hour >= 7) & (traffic['date_time'].dt.hour < 19)]

注意:每个逻辑条件必须单独用括号包裹,避免运算符优先级导致的结果错误。

内容的提问来源于stack exchange,提问作者VIVEK SINGH GULIA

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 21:21:02