Почему не сообщается об ошибке, если b не указан, но требуется внутри функции?Спасибо!
f2 <- function(a,b) {a[b]}; f2(a=rep(1, 2))
Я понимаю, что в этой функции нет ошибки:
f <- function(x) {
10
}
f(stop("This is an error!"))
из-за ленивой оценки Но это
f <- function(x) {
force(x)
10
}
f(stop("This is an error!"))
или это
f <- function(x) {
x
10
}
f(stop("This is an error!"))
выдаст ошибку.Поскольку в обоих случаях x равен , используется внутри функции.Оба приведенных выше примера взяты из http://adv -r.had.co.nz / Functions.html .Поскольку b также используется в пределах f2, необходимо ли добавлять силу внутри f2?Спасибо!