且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

获取R中预定义函数的分析树

更新时间:2023-12-01 11:39:40

我不确定哪一个满足您的需求:

I'm not exactly sure which of these meets your desires:

 eval(f)
#function(x){ x^2 }

 identical(eval(f), get("f"))
#[1] TRUE
 identical(eval(f), substitute( function(x){ x^2 })  )
#[1] FALSE

 deparse(f)
#[1] "function (x) " "{"             "    x^2"       "}"            

 body(f)
#------
{
    x^2
}
#---------

eval(parse(text=deparse(f)))
#---------
function (x) 
{
    x^2
}
#-----------

 parse(text=deparse(f))
#--------
expression(function (x) 
{
    x^2
})
#--------

 get("f")
# function(x){ x^2 }

打印表示可能无法显示返回值的全部功能.

The print representation may not display the full features of the values returned.

 class(substitute(function(x){ x^2 }) )
#[1] "call"
 class( eval(f) ) 
#[1] "function"