Каков наилучший способ выполнения операций для пар полных наблюдений в R? - PullRequest
0 голосов
/ 06 апреля 2020

Рассмотрим два вектора x и y равной длины; каждый из них имеет значения как NA, так и не-NA. Задача состоит в том, чтобы эффективно найти пары значений не-NA между двумя векторами, чтобы выполнить некоторые последующие операции на этих парах полных наблюдений. Полная пара определяется как значение не-NA для индекса i в x и y.

. Я попробовал следующее:

complete.pairs <- !is.na(x) & !is.na(y)
complete.x <- x[complete.pairs]
complete.y <- y[complete.pairs]

Однако Я не уверен, что это самый быстрый способ сделать это. Для некоторого контекста идея состоит в том, чтобы обрабатывать все комбинации строк в матрице таким образом (поэтому x и y будут единственной комбинацией). Я ищу что-то наподобие того, что делает cor(x, use = "complete.pairwise.obs"), поскольку это кажется очень эффективным для поиска полных пар на комбинацию векторов и последующего вычисления корреляции. Здесь я не обязательно хочу вычислять корреляцию после, а скорее другие вещи, такие как статистические тесты, например. Из моих тестов мой подход кажется действительно неэффективным для больших матриц.

...