Как рассчитать среднее по индексу N элементов в массиве в R - PullRequest
1 голос
/ 24 марта 2019

У меня есть общий массив из 15 элементов. Каждый элемент в этом массиве представляет собой матрицу 159 на 159.

Теперь я хочу вычислить среднее значение каждого индекса по 15 элементам и сохранить результат в новой матрице 159 на 159, в которой новый индекс получен из среднего значения той же позиции индекса по 15 элементам оригинала. массив.

Это вложенный массив, если мне позволено так говорить. Это также проблема EigenFace на сайте с открытым исходным кодом, который мне показался интересным. Короче говоря, этот массив представляет собой коллекцию из 15 человек, и у каждого человека есть 11 изображений, снятых с 11 лицевыми эмоциями, такими как подмигивание, счастье, грусть и т. Д. Таким образом, это массив из 15 элементов, каждый элемент также массив из 11 строк и тысяч столбцов пикселей, чтобы изобразить выражение лица этого человека.

Например, новый индекс [1,1] новой матрицы получается путем взятия среднего значения [1,1] индексов из 15 элементов / матриц в исходном массиве.

Я бы хотел избежать использования цикла for и надеюсь, что есть встроенная функция, которую я могу использовать.

Любые советы будут с благодарностью!

1 Ответ

1 голос
/ 24 марта 2019

Вы можете использовать Reduce():

data <- list(matrix(1:16, 4), matrix(1:16, 4))

result <- Reduce('+', data)

result <- result * 1/length(data)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...