将R函数转换为字符串

时间:2017-02-03 14:02:44

标签: r string function

我想将函数对象转换为字符串

fn=function(x)
{
  return(2*x)
}

my_convert_function(fn)

# would give 
#"fn=function(x)
#{
#  return(2*x)
#}"

有可能吗?谢谢你的想法

2 个答案:

答案 0 :(得分:4)

deparse(fn)
[1] "function (x) "     "{"                 "    return(2 * x)" "}"

答案 1 :(得分:0)

从R 4.0开始,还有deparse1()。此版本的deparse()直接返回一个字符串(如果您要查找的是该字符串):

fn=function(x)
{
  return(2*x)
}
  
deparse1(fn)

#> [1] "function (x)  {     return(2 * x) }"