Упростить для цикла - PullRequest
0 голосов
/ 04 декабря 2018

У меня есть два массива out и res и c число.У меня есть этот код:

for(i in 1:N) {
    out[i] <- c - sum(res[1:i]) / i 
}

Возможно ли упростить этот код в одну строку, примерно так:

out = c - sum(res[1: ???] / i

Ответы [ 2 ]

0 голосов
/ 04 декабря 2018

Вы можете векторизовать это с помощью sapply().

out <- sapply(1:length(res), function(x) c - mean(res[1:x]))
0 голосов
/ 04 декабря 2018

Вы имеете в виду что-то вроде c-cumsum(res)/1:length(res)?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...