迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 >

清理 R 的环境

作者:迹忆客 最近更新:2023/03/21 浏览次数:

在 R 中开始一个新项目或启动一个新的工作会话之前,建议先清理环境。这意味着要删除所有对象,并分离上一个会话期间安装的所有包。

清理整个环境的最简单、最可靠的方法是重新启动 R,注意关闭应用程序时不要保存当前的 R 映像。在 RStudio 中,你必须将 Save workspace to .RData on exit 选项设置为 Never,并禁用重启时恢复环境的选项。

你还应该确保项目文件夹中没有剩余的 .RData 文件。这些文件是不可见的,所以你需要使用命令行检查这些文件是否存在,如果存在,就删除它们。

在不重启 R 的情况下清除环境

也可以使用代码将 R 环境置于干净状态。但是,没有一种方法可以保证让环境像初始化 R 时一样干净。如果你想用某种方法分离除基本包以外的所有包,你可以创建一个函数-DetachPackages 来自动完成这个任务。

这个函数创建了一个基本包名的向量,你应该防止分离这些包。然后它创建一个包含所有已安装包名的列表,并从这个列表中减去基本列表中的包名。最后,它将分离那些名字仍在 package.list 中的软件包。

DetachPackages <- function() {
    basic.packages <- c("package:stats","package:graphics","package:grDevices","package:utils","package:datasets","package:methods","package:base")
    package.list <- search()[ifelse(unlist(gregexpr("package:",search()))==1,TRUE,FALSE)]
    package.list <- setdiff(package.list,basic.packages)
    if (length(package.list)>0) {
        for (package in package.list) {
            detach(package, character.only=TRUE)
        }
    }
}

你可以先用这些命令安装并加载一个包,比如 readxl,来尝试下这个功能。

install.packages("readxl")
library(`readxl`)

如果你执行 sessionInfo(),在 other attached packages 部分,你会得到这个作为输出的一部分。

other attached packages:
[1] readxl_1.3.1

然后你可以调用 DetachPackages() 函数,再调用 sessionInfo()other attached packages 部分将消失。

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

R 中具有多个条件的函数向量化

发布时间:2023/03/21 浏览次数:64 分类:编程语言

一项常见的数据分析任务是根据同一行的其他列使用一个或多个条件创建或更新数据框列。 如果我们尝试使用 if 语句来执行此操作,则只会使用第一行来测试条件,并且会根据该行更

在 R 中读取 xlsx 文件

发布时间:2023/03/21 浏览次数:66 分类:编程语言

在这篇文章中,你将会了解到两个在 R 中读取 xlsx 文件的最完整和最容易使用的库:readxl 和 openxlsx。

在 R 中注释掉多行

发布时间:2023/03/21 浏览次数:63 分类:编程语言

在本文中,你将学习如何在 R 中注释出多行,而不必在每一行的开头手动写一个#字符来注释。

在 R 中清除内存

发布时间:2023/03/21 浏览次数:197 分类:编程语言

在本教程中,你将学习如何清除 R 系统占用的内存,而不必重新启动它或重新启动它运行的计算机。

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便