我想卸载一个包而不必重新启动 R(主要是因为在我尝试不同的、冲突的包时重新启动 R 会令人沮丧,但可以想象这可以在程序中使用一个函数然后使用另一个函数——尽管命名空间对于这种用途,引用可能是一个更好的主意)。
?library没有显示任何可以卸载包的选项。
?library
有一个建议可以detach卸载包,但以下都失败:
detach
detach(vegan)
错误detach(vegan):无效name参数
name
detach("vegan")
错误detach("vegan"):无效name参数
那么如何卸载包呢?
试试这个(?detach更多细节参见):
?detach
detach("package:vegan", unload=TRUE)
可以一次加载一个包的多个版本(例如,如果您在不同的库中有一个开发版本和一个稳定版本)。为确保所有副本均已分离,请使用此功能。
detach_package <- function(pkg, character.only = FALSE) { if(!character.only) { pkg <- deparse(substitute(pkg)) } search_item <- paste("package", pkg, sep = ":") while(search_item %in% search()) { detach(search_item, unload = TRUE, character.only = TRUE) } }
用法是,例如
detach_package(vegan)
要么
detach_package("vegan", TRUE)