清理 R 的环境
在 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
部分将消失。
相关文章
R 中具有多个条件的函数向量化
发布时间:2023/03/21 浏览次数:64 分类:编程语言
-
一项常见的数据分析任务是根据同一行的其他列使用一个或多个条件创建或更新数据框列。 如果我们尝试使用 if 语句来执行此操作,则只会使用第一行来测试条件,并且会根据该行更
在 R 中读取 xlsx 文件
发布时间:2023/03/21 浏览次数:66 分类:编程语言
-
在这篇文章中,你将会了解到两个在 R 中读取 xlsx 文件的最完整和最容易使用的库:readxl 和 openxlsx。