Polars创建列表列报错,如何无需map_elements实现该功能?
解决Polars列转单元素列表的Object类型报错问题
你的代码写法有误,直接用[pl.col('title')]会让Polars误判类型,哪怕schema显示title是pl.String,也会被识别为pl.Object导致报错。不用map_elements的话,推荐用Polars原生的矢量化方法list.wrap(),性能比逐元素处理的map_elements更高效。
正确代码
df = df.with_columns(list_title=pl.col('title').list.wrap())
补充说明
list.wrap()的作用是将每一行的标量值直接包装成单元素列表,属于批量矢量化操作,不会触发类型识别异常。而你之前的写法[pl.col('title')]是试图把整个title列作为单个元素放进列表列,这不符合你要每个元素单独成列表的需求,才会引发报错。
内容的提问来源于stack exchange,提问作者apostofes
相关产品推荐
相关产品推荐

