polars.LazyFrame.rename#

LazyFrame.rename(
mapping: dict[str, str] | Callable[[str], str],
*,
strict: bool = True,
) LazyFrame[source]#

重命名列名。

Parameters:
mapping

从旧名称映射到新名称的键值对,或者一个以旧名称为输入并返回新名称的函数。

strict

验证当前模式中是否存在所有列名,如果不存在则抛出异常。(请注意,当传递函数给mapping时,此参数无效)。

注释

如果现有的名称被交换(例如,‘A’指向‘B’且‘B’指向‘A’), polars将在此节点阻止投影和谓词下推。

示例

>>> lf = pl.LazyFrame(
...     {
...         "foo": [1, 2, 3],
...         "bar": [6, 7, 8],
...         "ham": ["a", "b", "c"],
...     }
... )
>>> lf.rename({"foo": "apple"}).collect()
shape: (3, 3)
┌───────┬─────┬─────┐
│ apple ┆ bar ┆ ham │
│ ---   ┆ --- ┆ --- │
│ i64   ┆ i64 ┆ str │
╞═══════╪═════╪═════╡
│ 1     ┆ 6   ┆ a   │
│ 2     ┆ 7   ┆ b   │
│ 3     ┆ 8   ┆ c   │
└───────┴─────┴─────┘
>>> lf.rename(lambda column_name: "c" + column_name[1:]).collect()
shape: (3, 3)
┌─────┬─────┬─────┐
│ coo ┆ car ┆ cam │
│ --- ┆ --- ┆ --- │
│ i64 ┆ i64 ┆ str │
╞═════╪═════╪═════╡
│ 1   ┆ 6   ┆ a   │
│ 2   ┆ 7   ┆ b   │
│ 3   ┆ 8   ┆ c   │
└─────┴─────┴─────┘