R 从公式中获取局部变量

问题描述 投票:0回答:1

考虑 R 代码:

foo <- function(formula){
    Y <- get(formula[[2]])
    print(Y)
}
main <- function(){
    Y <- 1
    X <- 2
    foo(Y ~ X)
}
main()

结果表明,在

get(formula[[2]])
中,它找不到对象
Y
。 如何使函数在本地设置中读取公式? 如何更改代码才能运行并打印
Y

r types formula
1个回答
0
投票

指定

environment
:

foo <- function(formula){
  Y <- get(formula[[2]], environment(formula))
  print(Y)
}
© www.soinside.com 2019 - 2024. All rights reserved.