window для фильтров
Создаёт скользящее окно размером `window_size`, которое перемещается по входным данным с шагом в n строк/элементов.
Сигнатура
> window {flags} (window_size)
Флаги
-
--stride, -s {int}: Количество строк, на которое нужно перемещаться между окнами. -
--remainder, -r: Возвращать последние фрагменты, даже если в них меньше элементов, чем указано в размере.
Параметры
-
window_size: Размер каждого окна.
Типы входных и выходных данных:
| вход | выход |
|---|---|
| list<any> | list<list<any>> |
Примеры
Скользящее окно из двух элементов.
> [1 2 3 4] | window 2 ╭───┬───────────╮ │ 0 │ ╭───┬───╮ │ │ │ │ 0 │ 1 │ │ │ │ │ 1 │ 2 │ │ │ │ ╰───┴───╯ │ │ 1 │ ╭───┬───╮ │ │ │ │ 0 │ 2 │ │ │ │ │ 1 │ 3 │ │ │ │ ╰───┴───╯ │ │ 2 │ ╭───┬───╮ │ │ │ │ 0 │ 3 │ │ │ │ │ 1 │ 4 │ │ │ │ ╰───┴───╯ │ ╰───┴───────────╯
Скользящее окно из двух элементов с шагом 3.
> [1, 2, 3, 4, 5, 6, 7, 8] | window 2 --stride 3 ╭───┬───────────╮ │ 0 │ ╭───┬───╮ │ │ │ │ 0 │ 1 │ │ │ │ │ 1 │ 2 │ │ │ │ ╰───┴───╯ │ │ 1 │ ╭───┬───╮ │ │ │ │ 0 │ 4 │ │ │ │ │ 1 │ 5 │ │ │ │ ╰───┴───╯ │ │ 2 │ ╭───┬───╮ │ │ │ │ 0 │ 7 │ │ │ │ │ 1 │ 8 │ │ │ │ ╰───┴───╯ │ ╰───┴───────────╯
Скользящее окно с шагом, равным размеру окна, включающее остаток. Эквивалентно разбиению на фрагменты.
> [1, 2, 3, 4, 5] | window 3 --stride 3 --remainder ╭───┬───────────╮ │ 0 │ ╭───┬───╮ │ │ │ │ 0 │ 1 │ │ │ │ │ 1 │ 2 │ │ │ │ │ 2 │ 3 │ │ │ │ ╰───┴───╯ │ │ 1 │ ╭───┬───╮ │ │ │ │ 0 │ 4 │ │ │ │ │ 1 │ 5 │ │ │ │ ╰───┴───╯ │ ╰───┴───────────╯
Примечания
Эта команда завершится с ошибкой, если window_size или stride отрицательны или равны нулю.
Copyright © 2019–2026 The Nushell Project DevelopersLicensed under the MIT License.
https://www.nushell.sh/commands/docs/window.html