#r
#r
Вопрос:
У меня есть некоторый произвольный вектор, такой как
v <- seq(1,5)
Для каждого индекса v
мне теперь нужно вычислить произведение всех следующих элементов v
.
Здесь результатом будет вектор w=(5*4*3*2,5*4*3,5*4,5,1)
, но для этого мне нужен общий алгоритм. Я пытаюсь избежать цикла (что является очевидным решением).
Ответ №1:
Вы можете использовать cumprod
с rev
:
c(rev(cumprod(rev(v[-1]))), 1)
#[1] 120 60 20 5 1