Spec-Zone.ru › Nushell

polars unnest for dataframe

Decompose struct columns into separate columns for each of their fields. The new columns will be inserted into the dataframe at the location of the struct column.

Signature

> polars unnest {flags} ...rest

Flags

  • --separator, -s {string}: Optional separator to use when creating new column names.

Parameters

  • ...rest: Columns to unnest.

Input/output types:

input output
polars_dataframe polars_dataframe
polars_lazyframe polars_lazyframe

Examples

Unnest a dataframe

> [[id person]; [1 {name: "Bob", age: 36}] [2 {name: "Betty", age: 63}]]
                    | polars into-df -s {id: i64, person: {name: str, age: u8}}
                    | polars unnest person
                    | polars get id name age
                    | polars sort-by id
╭───┬────┬───────┬─────╮
│ # │ id │ name  │ age │
├───┼────┼───────┼─────┤
│ 0 │  1 │ Bob   │  36 │
│ 1 │  2 │ Betty │  63 │
╰───┴────┴───────┴─────╯

Unnest a lazy dataframe

> [[id person]; [1 {name: "Bob", age: 36}] [2 {name: "Betty", age: 63}]]
                    | polars into-df -s {id: i64, person: {name: str, age: u8}}
                    | polars into-lazy
                    | polars unnest person
                    | polars select (polars col id) (polars col name) (polars col age)
                    | polars collect
                    | polars sort-by id
╭───┬────┬───────┬─────╮
│ # │ id │ name  │ age │
├───┼────┼───────┼─────┤
│ 0 │  1 │ Bob   │  36 │
│ 1 │  2 │ Betty │  63 │
╰───┴────┴───────┴─────╯

Unnest with a custom separator

> [[id person]; [1 {name: "Bob", age: 36}] [2 {name: "Betty", age: 63}]]
                    | polars into-df -s {id: i64, person: {name: str, age: u8}}
                    | polars unnest person -s "_"
                    | polars get id person_name person_age
                    | polars sort-by id
╭───┬────┬─────────────┬────────────╮
│ # │ id │ person_name │ person_age │
├───┼────┼─────────────┼────────────┤
│ 0 │  1 │ Bob         │         36 │
│ 1 │  2 │ Betty       │         63 │
╰───┴────┴─────────────┴────────────╯

Copyright © 2019–2026 The Nushell Project DevelopersLicensed under the MIT License.
https://www.nushell.sh/commands/docs/polars_unnest.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API