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