Я пытаюсь выяснить, как разрешить функции напрямую изменять или создавать переменные в родительской среде, независимо от того, является ли родительская среда глобальной средой или другой функцией.Позволяет R-функциям напрямую изменять родительскую среду
Например, если у меня есть функция
my_fun <- function(){
a <- 1
}
Я хотел бы призыв к my_fun(), чтобы получить те же результаты, что делает a <- 1
.
Я знаю, что один из способов сделать это - использовать parent.frame
, как показано ниже, но я бы предпочел метод, который не требует переписывания каждого присваивания переменной.
my_fun <- function(){
env = parent.frame()
env$a <- 1
}
Это путь к темной стороне. – jogo
Я бы не рекомендовал это. –
Почему у вас есть требование изменить vars в родительском env? – rbm