0

Что было бы хорошим способом реализовать 1D-фильтр свертки над коллекциями laravel? смысл, возьмите один итерационный элемент, N соседних элементы и сделать взвешенное среднее, вес определяется в аа свертке матрицеФильтры свертки (т. Е. «Средний») с коллекциями Laravel, функционально

это не трудно представить себе, как это сделать итеративно через for петли, используя индекс

но есть ли более чистый способ, используя функциональный подход коллекции через карту/фильтр/что-то в этом роде? я, кажется, испытываю проблемы с доступом к другому элементу, чем текущий итерационный.

ответ

0

Я бы посмотрел на встроенные методы сбора Laravel, чтобы перебирать вашу коллекцию (для цикла). https://laravel.com/docs/5.4/collections#method-each Я не думаю, что есть матрица, как операции по созданию 1D фильтра.

+0

это вещь. каждый итерации и только текущий элемент с истекшим номером – user151496

+0

Вы можете использовать пару связанных функций 'slice ($ index, $ windowLength) -> sum()/$ windowLength' в пределах функции map или transform в исходной коллекции. Очевидно, вам придётся разрешить заполнение нулями в начале и т. Д. Кроме этого, я не могу придумать способ laravel-ish сделать это – Christian

+0

спасибо за ваше предложение. это хорошая идея, но это почти похоже на использование только итерации:/я думал, что будет какая-то карта, которая будет знать о своих соседях или что-то в этом роде. я просто буду использовать итерацию, я думаю – user151496

Смежные вопросы