如何在R环境中工作?

时间:2017-09-08 16:13:52

标签: r

我找不到任何关于如何做到这一点。我想在一个单独的环境中在R中执行一组分析。例如:

n.e <- new.env()
n.e$df <- mtcars[mtcars$cyl == 6,]
n.e$avg_mpg <- mean(n.e$df$mpg)
n.e$median_qsec <- median(n.e$df$qsec)

实际的计算并不重要,但关键是用n.e$开始一切都很麻烦。如果有某种方式专门在环境n.e中工作,例如:

n.e <- new.env()
workwithinenvironment(n.e){
  df <- mtcars[mtcars$cyl == 6,]
  avg_mpg <- mean(df$mpg)
  median_qsec <- median(df$qsec)
}

哪一个会以相同的结果结束,但我无法一遍又一遍地写n.e$

1 个答案:

答案 0 :(得分:3)

一种可能性是使用with(),其(如其帮助页面所述)将接受环境作为其第一个参数。

n.e <- new.env()
with(n.e, {
     df <- mtcars[mtcars$cyl == 6,]
     avg_mpg <- mean(df$mpg)
     median_qsec <- median(df$qsec)
})

## Check that it works
ls(n.e)
## [1] "avg_mpg"     "df"          "median_qsec"
n.e$avg_mpg
## [1] 19.74286