Я пытаюсь найти возврат журнала вдоль вектора цен, но не уверен, как вызвать индекс внутри функции для использования в функции apply.lapply для функции, которая требует индексации
Вот что я использую сейчас:
set.seed(456)
df1 <- data.frame(id = 1:20, col1 = round(runif(20) * 100 ,0))
df1[,'logDiff'] <- NA
for(i in 2:20){
df1[i,'logDiff'] <- log(df1[i,'col1']/df1[i-1,'col1'])
}
Есть предложения?
EDIT:
У меня есть куча колонок, чтобы сделать это для, и хотел бы использовать что-то вроде этого:
colsToUse <- c('co1l','col2','col3')
lagLogDf <- as.data.frame(lapply(df1[,colsToUse], lagLogFunction(x)))
+1, избитый 43sec :-) – Beasterfield