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

如何判断Polars Series的数值是否相等?

仅判断Polars Series数值是否相等的方法

Polars的Series.series_equal默认会同时校验名称和数值,导致名称不同但数值一致的Series返回False。你可以通过以下两种方式仅判断数值是否相等:

方法1:使用series_equal的check_names参数

这是最直接的方案,series_equal本身提供了关闭名称检查的参数:

import polars as pl

a = pl.Series("a", [1,2,3])
b = pl.Series("b", [1,2,3])

a.series_equal(b, check_names=False)
# 返回 True

该方法还支持其他可选参数来控制校验逻辑:

  • check_dtype=False:允许不同数据类型的Series(比如int和float)只要数值一致就返回True
  • check_nan_equal=True(默认):将NaN视为相等,关闭则NaN会被判定为不等

方法2:逐元素比较后判断全部相等

通过==运算符逐元素比较,再用.all()判断是否所有元素都相等:

(a == b).all()
# 返回 True

⚠️ 注意:这种方式存在两个限制:

  1. 两个Series必须长度相同,否则会抛出错误
  2. 对NaN的处理与series_equal不同:NaN == NaN会返回False,因此如果Series包含NaN,这种方法会返回False,而series_equal默认会将NaN视为相等

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.17 07:37:27