вычесть маленькую матрицу из большой матрицы - PullRequest
0 голосов
/ 18 апреля 2019

У меня есть две матрицы, одна, скажем, 1000 строк, а другая - миллион строк (и столько же столбцов), M_small и M_large.

Я бы хотел найти для небольшой матрицы, есть ли в M_large строки, для которых разница между M_large и M_small близка к нулю (меньше 0,5).

Например:

M_small = structure(c(10, 1, 7, 11, 2, 8, 12, 3, 9, 13, 4, 10, 14, 5, 11
), .Dim = c(3L, 5L))

M_large = structure(c(10.1, 0.9, 300, 100, 65, 1.2, 15, 200, 400, 11.01, 
8.11, 2.11, 16, 3.05, 500, 300, 9.12, 33, 13.2, 40, 600, 400, 
77, 45, 20, 55, 700, 1000, 88, 56), .Dim = 6:5)

Для каждой строки M_small я бы хотел найти строки и столбцы M_large, близкие к M_small. Так, например:

M_large - M_small[1,] 

показывает, что первая строка M_small близка к M_large в столбцах 1 и 4 (разница составляет 0.1 и 0.2 соответственно).

Как мне ОЧЕНЬ эффективно достичь этого?

...