rotate for filters
Rotates a table or record clockwise (default) or counter-clockwise (use --ccw flag).
Signature
> rotate {flags} ...rest
Flags
-
--ccw: Rotate counter clockwise.
Parameters
-
...rest: The names to give columns once rotated.
Input/output types:
| input | output |
|---|---|
| record | table |
| table | table |
| list<any> | table |
| string | table |
Examples
Rotate a record clockwise, producing a table (like transpose but with column order reversed)
> {a:1, b:2} | rotate
╭───┬─────────┬─────────╮
│ # │ column0 │ column1 │
├───┼─────────┼─────────┤
│ 0 │ 1 │ a │
│ 1 │ 2 │ b │
╰───┴─────────┴─────────╯Rotate 2x3 table clockwise
> [[a b]; [1 2] [3 4] [5 6]] | rotate ╭───┬─────────┬─────────┬─────────┬─────────╮ │ # │ column0 │ column1 │ column2 │ column3 │ ├───┼─────────┼─────────┼─────────┼─────────┤ │ 0 │ 5 │ 3 │ 1 │ a │ │ 1 │ 6 │ 4 │ 2 │ b │ ╰───┴─────────┴─────────┴─────────┴─────────╯
Rotate table clockwise and change columns names
> [[a b]; [1 2]] | rotate col_a col_b ╭───┬───────┬───────╮ │ # │ col_a │ col_b │ ├───┼───────┼───────┤ │ 0 │ 1 │ a │ │ 1 │ 2 │ b │ ╰───┴───────┴───────╯
Rotate table counter clockwise
> [[a b]; [1 2]] | rotate --ccw ╭───┬─────────┬─────────╮ │ # │ column0 │ column1 │ ├───┼─────────┼─────────┤ │ 0 │ b │ 2 │ │ 1 │ a │ 1 │ ╰───┴─────────┴─────────╯
Rotate table counter-clockwise
> [[a b]; [1 2] [3 4] [5 6]] | rotate --ccw ╭───┬─────────┬─────────┬─────────┬─────────╮ │ # │ column0 │ column1 │ column2 │ column3 │ ├───┼─────────┼─────────┼─────────┼─────────┤ │ 0 │ b │ 2 │ 4 │ 6 │ │ 1 │ a │ 1 │ 3 │ 5 │ ╰───┴─────────┴─────────┴─────────┴─────────╯
Rotate table counter-clockwise and change columns names
> [[a b]; [1 2]] | rotate --ccw col_a col_b ╭───┬───────┬───────╮ │ # │ col_a │ col_b │ ├───┼───────┼───────┤ │ 0 │ b │ 2 │ │ 1 │ a │ 1 │ ╰───┴───────┴───────╯
Copyright © 2019–2026 The Nushell Project DevelopersLicensed under the MIT License.
https://www.nushell.sh/commands/docs/rotate.html