Циклы в R - В любом случае нужно использовать индекс, чтобы избежать «для»?
Я знаю, что в R не рекомендуется использоватьfor
цикл, потому что он не имеет улучшенной производительности. Почти во всех случаях есть функция семьи*apply
это решает наши проблемы.
Однако я сталкиваюсь с ситуацией, когда я не вижу обходного пути.
Мне нужно рассчитать процентное отклонение для последовательных значений:
<code>pv[1] <- 0 for(i in 2:length(x)) { pv[i] <- (x[i] - x[i-1])/x[i-1] } </code>
Итак, как вы можете видеть, я должен использовать обаx[i]
элемент, но иx[i-1]
элемент. Используя*apply
функции, я просто вижу, как использоватьx[i]
, В любом случае я могу избежатьfor
петли?