Должен быть простой способ векторизовать следующий цикл в R, но я его не вижу.
w <- numeric(10) z <- rnorm(20) v <- c(sample(1:10,10),sample(1:10,10)) #Random ordering of c(1:10,1:10) for(i in 1:10) w[i] <- sum(z[v==i])
другой подход
w = rowsum(z, v)
Вы можете использовать агрегат: агрегат (z, by = list (v), sum)