Polars中计算集合类型列差集报错问题求助
Polars中计算集合类型列差集报错问题求助
各位好!我最近在处理Polars数据框的时候遇到了个难题,想请大家帮忙看看。
我的需求是这样的:数据框里有rule_based和gpt4两列,每列的内容都是用分号分隔的字符串,我想新增一个diff列,用来存储这两列对应行的集合差集——也就是rule_based里存在但gpt4里没有的元素。
我试着写了下面这段代码:
compare_df.with_columns( pl.col('rule_based').str.split(';').map_elements(set), pl.col('gpt4').str.split(';').map_elements(set) ).with_columns( diff = pl.col('rule_based') - pl.col('gpt4') )
结果运行后直接抛出了错误:
PanicException:
suboperation not supported for dtypeobject
我不太明白为什么会这样,明明已经把分割后的列表转成集合了呀?有没有大佬能指点一下,我应该怎么修改代码才能实现想要的功能呢?
备注:内容来源于stack exchange,提问作者Hugo Brito
相关产品推荐
相关产品推荐

