Все в вопросе! Я просто попытался немного оптимизировать и пригвоздить куски бутылки, из любопытства, я попробовал это:
t1 <- rnorm(10)
microbenchmark(
mean(t1),
sum(t1)/length(t1),
times = 10000)
и результат состоит в том, что среднее() в 6 раз меньше, чем вычисление "вручную"!
Есть ли это из-за накладных расходов в коде mean() перед вызовом Internal (среднее) или это сам код C, который медленнее? Зачем? Есть ли веская причина и, следовательно, хороший прецедент?