Усреднение ближайших соседей - PullRequest
0 голосов
/ 23 марта 2020

У меня есть кадр данных с 100 строками, каждая строка представляет человека, 5 столбцов, каждый столбец представляет характеристики c человека (AE): DF1 = 100x5. У меня похожий фрейм данных с людьми из другой страны, DF2 = 100x5.

Теперь для каждого человека в DF2 я вычисляю 3 ближайших соседей из DF1. Наконец, я хочу получить среднее значение характеристик этих соседей, в итоге получим «несуществующего» человека с 5 характеристиками. (Проблема на самом деле более сложная, чем эта, но это похожий пример).

Я использую функцию nn2 из пакета RANN для получения матрицы 100x3, что дает мне индексы (1-100) из трех соседей каждого человека в DF2. Вот где я застрял; Я не знаю, как получить 5 характеристик каждого из этих 3 соседей и затем усреднить их. Я искал среди всех * применять функции, но я не думаю, что они делают это (или я не понял их хорошо).

Надеюсь, я объяснил это ясно. Я ищу подпрограмму, которая получает фрейм данных 100x3, затем получает трехмерную структуру 100x3x5 путем поднабора из массива 100x5, а затем усредняет по измерению центра, заканчивая фреймом данных 100x5.

Я думаю, что идея довольно проста, но я не могу найти способ сделать это. Кстати, я использую R.

Я ценю любую помощь

...