Если df
ваши данные:
df <- data.frame(Date=c('18/02/2014','19/02/2014','20/02/2014'), Ubam = c(185.31, 185.17, 185.06))
, вы можете сначала создать вектор изменения цены, со 100 в качестве первой записи:
price_changes <- c(100, tail(df[, 'Ubam'], -1) / head(df[, 'Ubam'], -1) - 1)
Затем вы можете сделать накопленная сумма для создания перебазированного индекса цен в виде нового столбца в df
:
df$rebased_index <- cumsum(price_changes)
df
#output
Date Ubam rebased_index
1 18/02/2014 185.31 100.00000
2 19/02/2014 185.17 99.99924
3 20/02/2014 185.06 99.9986