Циклы в 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петли?

Ответы на вопрос(3)

Ваш ответ на вопрос