polars.Expr.struct.with_fields
-
Добавить или перезаписать поля этой структуры.
Это похоже на
with_columnsуDataFrame.- Параметры:
-
- *exprs
-
Поле или поля для добавления, указанные в виде позиционных аргументов. Принимает выражения. Строки интерпретируются как имена столбцов, остальные значения, не являющиеся выражениями, — как литералы.
- **named_exprs
-
Дополнительные поля для добавления, указанные в виде именованных аргументов. Столбцы будут переименованы в соответствии с именами аргументов.
См. также
Примеры
>>> df = pl.DataFrame( ... { ... "coords": [{"x": 1, "y": 4}, {"x": 4, "y": 9}, {"x": 9, "y": 16}], ... "multiply": [10, 2, 3], ... } ... ) >>> df shape: (3, 2) ┌───────────┬──────────┐ │ coords ┆ multiply │ │ --- ┆ --- │ │ struct[2] ┆ i64 │ ╞═══════════╪══════════╡ │ {1,4} ┆ 10 │ │ {4,9} ┆ 2 │ │ {9,16} ┆ 3 │ └───────────┴──────────┘ >>> df = df.with_columns( ... pl.col("coords").struct.with_fields( ... pl.field("x").sqrt(), ... y_mul=pl.field("y") * pl.col("multiply"), ... ) ... ) >>> df shape: (3, 2) ┌─────────────┬──────────┐ │ coords ┆ multiply │ │ --- ┆ --- │ │ struct[3] ┆ i64 │ ╞═════════════╪══════════╡ │ {1.0,4,40} ┆ 10 │ │ {2.0,9,18} ┆ 2 │ │ {3.0,16,48} ┆ 3 │ └─────────────┴──────────┘ >>> df.unnest("coords") shape: (3, 4) ┌─────┬─────┬───────┬──────────┐ │ x ┆ y ┆ y_mul ┆ multiply │ │ --- ┆ --- ┆ --- ┆ --- │ │ f64 ┆ i64 ┆ i64 ┆ i64 │ ╞═════╪═════╪═══════╪══════════╡ │ 1.0 ┆ 4 ┆ 40 ┆ 10 │ │ 2.0 ┆ 9 ┆ 18 ┆ 2 │ │ 3.0 ┆ 16 ┆ 48 ┆ 3 │ └─────┴─────┴───────┴──────────┘
Expr.struct.with_fields(
*exprs: IntoExpr | Iterable[IntoExpr],
**named_exprs: IntoExpr,
) → Expr
© 2020 Ritchie Vink
© 2022 Polars contributors
Licensed under the MIT License.
https://docs.pola.rs/api/python/stable/reference/expressions/api/polars.Expr.struct.with_fields.html