我可以从函数中返回一个等式吗? 例如,
testfn<-function(x)
{
y=x+z
return(y)
}
testfn(2)
我想要y = 2 + z
还有其他办法吗?
答案 0 :(得分:3)
我怀疑您正在寻找substitute
:
testfn <- function(x) {
substitute(y <- x + z, environment())
}
z <- 1
e <- testfn(2)
#y <- 2 + z
eval(e)
y
#[1] 3
答案 1 :(得分:0)
你在找这个吗?
testfn<-function(x)
{
y = paste0("y=",x,"+z")
return(y)
}
testfn(2)
[1] "y=2+z"
答案 2 :(得分:0)
这不回答问题,但是如果你想从函数中返回函数,它将类似于以下内容。
testfn <- function(x){
force(x)
function(z) x + z
}
y <- testfn(2)
y(3)
#[1] 5
如果你对此毫无兴趣就这么说,我会删除这个答案。