Я пытаюсь сгенерировать последовательность с единицей измерения меньше 1, но мне не удалось получить правильный номер для последовательности. Воспроизводимый код выглядит так, как показано ниже:
> stock=3 # initial value
> inflow=0.4
> outflow=0.25
> unit=1/8
> stock=stock+(inflow-outflow)*stock
> for (i in seq(1,10,by=unit)) stock[i+1]=stock[i]+(inflow-outflow)*stock[i]
> stock
[1] 3.450000 3.967500 4.562625 5.247019 6.034072 6.939182 7.980060 9.177069 10.553629
[10] 12.136673 13.957174
> length(stock)
[1] 11
> seq(1,10,by=unit)
[1] 1.000 1.125 1.250 1.375 1.500 1.625 1.750 1.875 2.000 2.125 2.250 2.375 2.500 2.625
[15] 2.750 2.875 3.000 3.125 3.250 3.375 3.500 3.625 3.750 3.875 4.000 4.125 4.250 4.375
[29] 4.500 4.625 4.750 4.875 5.000 5.125 5.250 5.375 5.500 5.625 5.750 5.875 6.000 6.125
[43] 6.250 6.375 6.500 6.625 6.750 6.875 7.000 7.125 7.250 7.375 7.500 7.625 7.750 7.875
[57] 8.000 8.125 8.250 8.375 8.500 8.625 8.750 8.875 9.000 9.125 9.250 9.375 9.500 9.625
[71] 9.750 9.875 10.000
> length(seq(1,10,by=unit))
[1] 73
Ожидаемый результат акции должен иметь длину 73, такую же, как длина последовательности. Числа теперь у меня 3,450000 3,967500 4,562625 ... 13,957174 правильные, но не полные, после числа 13,957174 должно быть еще 62 значения. Любая идея? Большое спасибо.