r - 如何在保留某些对象的同时整洁地清理我的 R 工作区?

标签 r statistics

假设我通过将向量绑定(bind)在一起来处理一些数据,就像我在一个慵懒的周日下午不会做的那样。

    x <- rnorm(25, mean = 65, sd = 10)
    y <- rnorm(25, mean = 75, sd = 7)
    z <- 1:25

    dd <- data.frame(mscore = x, vscore = y, caseid = z)

我现在有了新的数据框 dd ,这太棒了。但我之前的切片和切 block 仍然有碎屑:
    > ls()
    [1] "dd"        "x"          "y"          "z"         

如果我不再需要我的“源”列,但我想保留数据框,那么清理工作区的简单方法是什么?也就是说,现在我已经完成了对数据的操作,我只想拥有 dd并且没有可能无意中掩盖进一步分析的较小变量:
    > ls()
    [1] "dd"

我觉得解决方案必须是 rm(ls[ -(dd) ]) 的形式什么的,但我不太明白怎么说“请清理除以下对象之外的所有东西”。

最佳答案

我将通过创建一个单独的环境来存储所有垃圾变量来解决此问题,使用 with() 制作您的数据框,然后将要保留的那些复制到主环境中。这具有整洁的优点,但也可以保留所有对象,以防您想再次查看它们。

temp <- new.env()
with(temp, {
    x <- rnorm(25, mean = 65, sd = 10) 
    y <- rnorm(25, mean = 75, sd = 7) 
    z <- 1:25 
    dd <- data.frame(mscore = x, vscore = y, caseid = z)
    }
)

dd <- with(temp,dd)

这给了你:
> ls()
[1] "dd"   "temp"
> with(temp,ls())
[1] "dd" "x"  "y"  "z" 

当然,如果你真的想的话,你可以摆脱垃圾环境。

关于r - 如何在保留某些对象的同时整洁地清理我的 R 工作区?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2822532/

相关文章:

r - 从 R 中的矩阵计算真/假阳性和真/假负值

r - 在 R 中设置永久的默认 CRAN 镜像

machine-learning - 如何将sklearn.naive_bayes与(多个)分类功能一起使用?

youtube - youtube如何获取 “first referral from” Facebook,Twitter等?

python - 获取 2D 网格中每个 bin 的中值

r - 在R中绘制一个plm模型

r - 如何使用 R 中的子函数更改具有加号 (+) 的因子水平?

r - 如何查看R .Internal或.Primitive函数的源代码?

database - 您如何正确地对 ColdFusion 执行时间进行基准测试?

statistics - 机器学习有哪些经济上重要的应用?