У меня есть массив формы Numpy (6,2):
[[ 0, 1],
[10,11],
[20,21],
[30,31],
[40,41],
[50,51]]
Мне нужно скользящее окно с размером шага 1
и размером окна 3
вот так:
[[ 0, 1,10,11,20,21],
[10,11,20,21,30,31],
[20,21,30,31,40,41],
[30,31,40,41,50,51]]
Я ищу решение Numpy. Если бы ваше решение могло параметризовать форму исходного массива, а также размер окна и размер шага, это было бы здорово.
Я нашел этот связанный ответ Использование шагов для эффективного фильтра скользящего среднего но я не вижу, как указать там размер шага и как свернуть окно из 3d в непрерывный 2d-массив. Также этот итератор скользящего или скользящего окна? но это в Python, и я не уверен, насколько это эффективно. Кроме того, он поддерживает элементы, но не объединяет их в конце, если каждый элемент имеет несколько функций.