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

如何正确使用pyarrow.compute.is_in函数实现PyArrow数组元素匹配

pyarrow 5.0.0 版本 is_in 函数正确调用方案

实现isin功能的完整可运行代码

# 导入依赖
import pyarrow as pa
import pyarrow.compute as cp
from pyarrow import SetLookupOptions

# 构造测试数组
array1 = pa.array([1,2,3,4])
array2 = pa.array([1,4])

# 正确调用方式
result = cp.is_in(array1, options=SetLookupOptions(value_set=array2))

# 输出验证
print(result)

运行后输出结果符合预期:

[
  true,
  false,
  false,
  true
]

报错原因说明

你遇到的两类报错都是pyarrow 5.0.0的版本参数规则和新版文档不匹配导致:

  • 执行cp.is_in(array1,array2)报错:该版本is_in仅接受1个位置参数(待检查的数组),过滤集合不能作为第二个位置参数直接传入
  • 执行cp.is_in(values = array1,value_set = array2)报错:5.0.0版本不支持直接传入value_set关键字参数,该参数是pyarrow 6.0及以上版本才新增的直接传参方式,旧版本必须通过SetLookupOptions封装后传入options参数

高版本适配(pyarrow 6.0+)

如果后续升级pyarrow到6.0及以上版本,可以直接使用更简洁的调用方式:

result = cp.is_in(array1, value_set=array2)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 08:15:05