Вам не нужно 2 звонка на rowMeans
. Вы можете сначала выполнить вычитание и вызвать результат rowMeans
.
x1 <- rowMeans(m[,ind1])-rowMeans(m[,ind2])
x2 <- rowMeans(m[,ind1]-m[,ind2])
all.equal(x1,x2)
# [1] TRUE
is.data.frame
является частью проверок, выполненных в rowMeans
.
ОБНОВЛЕНИЕ: относительно .rowMeans
в R-devel, похоже, что это просто прямой вызов внутреннего кода (при условии, что do_colsum
не изменился). Это определяется как:
.rowMeans <- function(X, m, n, na.rm = FALSE)
.Internal(rowMeans(X, m, n, na.rm))
В вашем случае m=1024
и n=1000
.