У меня есть большая «матрица расстояний» (фактически кадр данных 170x170 в R), например:
A B C
A 0.198395022 0.314012433 0.32704998
B 0.314012433 0.262514533 0.318539233
C 0.32704998 0.318539233 0.211224133
Я пытаюсь применить конкретную формулу (которая у меня уже есть), чтобы привести эту вариацию к масштабу 0-1, как это требуется для моего статистического моделирования. Я ожидаю получить что-то подобное по всему фрейму данных (ожидаемый результат при применении формулы):
A B C
A 1 0.846050953 0.825897603
B 0.846050953 1 0.822548469
C 0.825897603 0.822548469 1
Итак, мне нужно пересчитать каждую недиагональную ячейку относительно соответствующих значений, применив эту формулу в R:
где B — матрица нормализованных значений, H — моя матрица/фрейм данных, а i и j — строки и столбцы моей матрицы/фрейма данных соответственно. Предполагается, что эта процедура нормализации систематически заменяет диагональ (i = j) на 1.
Спасибо!