R установить переменную, равную той, которую возвращает функция. Пересматривайте переменную снова каждый раз, когда она вызывается
Я не разработчик, и я не могу выразить то, что мне нужно, простыми словами. Это связано с такими вещами, как окружение, область видимости, вложенность и, возможно, указатели и ссылки.
Это должно быть ясно с кодом:
a<-c(1,2)
b<-length(a)
a<-c(1,2,3)
b
[1] 2
Я хочу, чтобы б 3 вернулся.
Что мне поменять во второй строке? Возможно ли это сделать без определения новых пользовательских функций и использования внешних пакетов?
Не удалось попробовать eval, назначить, << - пока
1 ответ
Я не рекомендую вам использовать его, но makeActiveBinding()
будет делать то, что вы просите:
makeActiveBinding("b", function() length(a), .GlobalEnv)
a <- c(1,2)
b
# [1] 2
a <- c(1,2,4)
b
# [1] 3