每次运行时如何重命名在函数内创建的对象?

时间:2019-01-16 15:21:41

标签: r function object rename

我做了一个生成数据帧的函数。由于我想存储数据框,因此将其保存在全局环境中。我想再次运行该函数,但要使用新参数,并避免覆盖以前的数据帧。基本上,每次运行函数时,我都想重命名数据框。

fun <- function(x, y) { 
  a <- x*1000
  b <- a + pi
  c <- a + b
  return(data_frame <- data.frame(a, b, c))
}

谢谢!

1 个答案:

答案 0 :(得分:0)

这是一个解决方案

fun <- function(x, y, name) { 
a <- x*1000
b <- a + pi
c <- a + b
assign(deparse(substitute(name)),data.frame(a, b, c), envir=.GlobalEnv)}

fun(1,2,df.name)
df.name

这将返回:

     a      b      c
1 1000 1003.1 2003.1