我正在尝试将我的 pandas 代码转移到极坐标中,但我在复制行方面遇到困难(我需要它来进行 pyvista 可视化)。在熊猫中我做了以下事情:
data['key'] = data['key'].apply(lambda x: 2*[x])
data = data.explode('key',
ignore_index=False
)
在极地 LazyFrame 我尝试过
data.with_columns(
(pl.col("key").apply(lambda x: [x]*2))
.explode()
)
data.select(pl.col("key")).collect()
但它提出:
ShapeError: unable to add a column of length 2000 to a dataframe of height 1000
我也试图避免使用应用
data.with_columns(
(pl.col("key").cast(pl.List(float))*2)
.explode()
)
但它只会引发:
PanicException: `mul` operation not supported for dtype `list[f64]`
知道如何做到这一点吗?
您可以使用Polars.LazyFrame.explode()来做到这一点: