如何在不重新启动R的情况下卸载软件包?

我想卸载一个软件包,而不必重新启动R(主要是因为重新启动R,因为我尝试了不同的,冲突的软件包令人沮丧,但可以想象,这可以在程序中使用一个函数,然后使用另一个函数 - 尽管命名空间引用可能是更好的主意)。

?library不显示任何可以卸载程序包的选项。

有一个建议, detach可以卸载软件包,但以下都失败了:

detach(vegan)

detach(vegan)错误:无效的name参数

detach("vegan")

detach("vegan")错误:无效的name参数

那么我如何卸载一个软件包呢?


试试看(更多细节请看?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)

您还可以使用unloadNamespace命令,如下所示:

unloadNamespace("sqldf")

该函数在卸载命名空间之前先分离它。


您可以取消选中RStudio中的复选框按钮(包)

链接地址: http://www.djcxy.com/p/4243.html

上一篇: How to unload a package without restarting R?

下一篇: Tools for making latex tables in R