Я пытаюсь создать вектор из другого вектора, в котором я каждый раз умножаю числа в векторе.
Например, если бы у меня было (1,2,3), новый вектор был бы (1, 1 x 2, 1 x 2 x 3) = (1,2,6)
Я попытался создать цикл для этого, как показано ниже. Кажется, работает для целых чисел, но не десятичных. Я не уверен почему.
x <- c(0.99,0.98,0.97,0.96,0.95)
for(i in 1:5){x[i]=prod(x[1:i])}
Результат равен 0,9900000 0,9702000 0,9316831 0,8590845 0,7303385
, что неверно как prod(x)
= 0,8582777. Что не совпадает с последним элементом вектора.
Кто-нибудь знает, почему это так? Или предложите улучшить мой код, чтобы получить правильный ответ.