Мне нужна помощь. Я хотел бы рассчитать индекс, в котором ранее вычисленное значение добавляется к следующему, пока не будет 0, и оттуда добавление начинается снова.
Вот что я пробовал:
NIVtest <- NIV[1:35,1]
NIVtest <- data.frame(NIVtest)
test <- matrix(nrow=35,ncol=1)
test <- as.data.frame(test)
names(test) <- "NI"
test
test[1,1] <- 0
for(i in 1:35){
NI = results[i,1]+NIVtest[i+1,1]
test[i+1,1] <- NI[1]
}
Вот тест-данные:
df <- data.frame(NIVtest = c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 18.92, 28.98, 13.39, 9.24, 29.38, 55.25, 0, 15.86, 7.52, 0))
и вот ожидаемые результаты:
c(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 13.5, 32.42, 61.4, 74.79, 84.03, 113.41, 168.66, 0, 15.86, 23.38, 0)
Спасибо за помощь!