我是北极星图书馆的新手,书名说明了我正在努力做的事情.
使用pandas库,我会使用Python的apply()
和build in eval()
函数.因为eval("[1,2,3]")
返回[1,2,3]
.
这也可以在Polars中完成--下面我有一个预期的输出示例--但Polars强烈建议使用它的Expression
API.我搜索了Expr.str属性,但没有找到执行此操作的表达式.我是漏掉了什么,还是应该选apply()
?
data = {'col_string': ['[1,2,3]', '[4,5,6]']}
df = pl.DataFrame(data)
df = df.with_columns(pl.col('col_string').map_elements(eval).alias('col_list'))
shape: (2, 2)
┌────────────┬───────────┐
│ col_string ┆ col_list │
│ --- ┆ --- │
│ str ┆ list[i64] │
╞════════════╪═══════════╡
│ [1,2,3] ┆ [1, 2, 3] │
│ [4,5,6] ┆ [4, 5, 6] │
└────────────┴───────────┘