Я пытаюсь везде, где это возможно, заменить циклы for на функции apply / map
Однако я застрял, когда мне нужно использовать индекс цикла в качестве позиции. Это легко сделать с помощью for
loop
Возьмите следующий код, я использую индекс i
как в левой, так и в правой части задания:
score <- function(x) {
n <- length(x)
right <- x
for(i in 1:n) {
right[i] <- (n - x[i] + 1) / (i * n)
}
(1 / n) * sum(right)
}
score(c(2,1,3))
как мне переписать вышесказанное с использованием функций map
или apply
?