618

R を再起動せずにパッケージをアンロードしたい (ほとんどの場合、別の競合するパッケージを試して R を再起動するとイライラするためですが、これをプログラムで使用して、ある関数を使用し、次に別の関数を使用することができます。参照することは、その用途にはおそらくより良い考えです)。

?libraryパッケージをアンロードするオプションは表示されません。

パッケージをアンロードできる提案がありdetachますが、次の両方が失敗します。

detach(vegan)

エラーdetach(vegan): 無効なname引数

detach("vegan")

エラーdetach("vegan"): 無効なname引数

では、パッケージをアンロードするにはどうすればよいでしょうか。

4

11 に答える 11

769

これを試してください (詳細については、を参照?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)
于 2011-08-08T09:19:07.893 に答える
103

unloadNamespace次のようにコマンドを使用することもできます。

unloadNamespace("sqldf")

この関数は、名前空間をアンロードする前に切り離します。

于 2015-03-11T15:55:46.957 に答える
40

RStudio(パッケージ)のチェックボックスボタンをオフにすることができます。

RStudio パッケージ ペイン

于 2015-07-05T03:29:37.283 に答える
10

kohske が回答として書いたものを試してみたところ、再びエラーが発生したため、検索を行ったところ、これがうまくいったことがわかりました (R 3.0.2):

require(splines) # package
detach(package:splines)

またはまた

library(splines)
pkg <- "package:splines"
detach(pkg, character.only = TRUE)
于 2014-06-11T01:16:30.880 に答える
5

を使用して、パッケージ (および一緒に持ち込まれたすべての依存関係) を削除したいすべてを試すことができますunloadNamespace()が、メモリ フットプリントは依然として持続します。いいえ、detach("package:,packageName", unload=TRUE, force = TRUE)どちらも機能しません。

新しいコンソールから、またはパッケージSession > Restart Rでメモリを確認します。pryr

pryr::mem_used()

# 40.6 MB   ## This will depend on which packages are loaded obviously (can also fluctuate a bit after the decimal)

私のチェックsessionInfo()

R version 3.6.1 (2019-07-05)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 17763)

Matrix products: default

locale:
[1] LC_COLLATE=English_Canada.1252  LC_CTYPE=English_Canada.1252    LC_MONETARY=English_Canada.1252 LC_NUMERIC=C                   
[5] LC_TIME=English_Canada.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
[1] compiler_3.6.1   pryr_0.1.4       magrittr_1.5     tools_3.6.1      Rcpp_1.0.3       stringi_1.4.3    codetools_0.2-16 stringr_1.4.0   
[9] packrat_0.5.0   

Seuratパッケージをロードして、新しいメモリ フットプリントを確認しましょう。

library(Seurat)
pryr::mem_used()

# 172 MB    ## Likely to change in the future but just to give you an idea

unloadNamespace()すべてを削除するために使用しましょう:

unloadNamespace("Seurat")
unloadNamespace("ape")
unloadNamespace("cluster")
unloadNamespace("cowplot")
unloadNamespace("ROCR")
unloadNamespace("gplots")
unloadNamespace("caTools")
unloadNamespace("bitops")
unloadNamespace("fitdistrplus")
unloadNamespace("RColorBrewer")
unloadNamespace("sctransform")
unloadNamespace("future.apply")
unloadNamespace("future")
unloadNamespace("plotly")
unloadNamespace("ggrepel")
unloadNamespace("ggridges")
unloadNamespace("ggplot2")
unloadNamespace("gridExtra")
unloadNamespace("gtable")
unloadNamespace("uwot")
unloadNamespace("irlba")
unloadNamespace("leiden")
unloadNamespace("reticulate")
unloadNamespace("rsvd")
unloadNamespace("survival")
unloadNamespace("Matrix")
unloadNamespace("nlme")
unloadNamespace("lmtest")
unloadNamespace("zoo")
unloadNamespace("metap")
unloadNamespace("lattice")
unloadNamespace("grid")
unloadNamespace("httr")
unloadNamespace("ica")
unloadNamespace("igraph")
unloadNamespace("irlba")
unloadNamespace("KernSmooth")
unloadNamespace("leiden")
unloadNamespace("MASS")
unloadNamespace("pbapply")
unloadNamespace("plotly")
unloadNamespace("png")
unloadNamespace("RANN")
unloadNamespace("RcppAnnoy")
unloadNamespace("tidyr")
unloadNamespace("dplyr")
unloadNamespace("tibble")
unloadNamespace("RANN")
unloadNamespace("tidyselect")
unloadNamespace("purrr")
unloadNamespace("htmlwidgets")
unloadNamespace("htmltools")
unloadNamespace("lifecycle")
unloadNamespace("pillar")
unloadNamespace("vctrs")
unloadNamespace("rlang")
unloadNamespace("Rtsne")
unloadNamespace("SDMTools")
unloadNamespace("Rdpack")
unloadNamespace("bibtex")
unloadNamespace("tsne")
unloadNamespace("backports")
unloadNamespace("R6")
unloadNamespace("lazyeval")
unloadNamespace("scales")
unloadNamespace("munsell")
unloadNamespace("colorspace")
unloadNamespace("npsurv")
unloadNamespace("compiler")
unloadNamespace("digest")
unloadNamespace("R.utils")
unloadNamespace("pkgconfig")
unloadNamespace("gbRd")
unloadNamespace("parallel")
unloadNamespace("gdata")
unloadNamespace("listenv")
unloadNamespace("crayon")
unloadNamespace("splines")
unloadNamespace("zeallot")
unloadNamespace("reshape")
unloadNamespace("glue")
unloadNamespace("lsei")
unloadNamespace("RcppParallel")
unloadNamespace("data.table")
unloadNamespace("viridisLite")
unloadNamespace("globals")

今チェックしてくださいsessionInfo()

R version 3.6.1 (2019-07-05)
Platform: x86_64-w64-mingw32/x64 (64-bit)
Running under: Windows 10 x64 (build 17763)

Matrix products: default

locale:
[1] LC_COLLATE=English_Canada.1252  LC_CTYPE=English_Canada.1252    LC_MONETARY=English_Canada.1252 LC_NUMERIC=C                   
[5] LC_TIME=English_Canada.1252    

attached base packages:
[1] stats     graphics  grDevices utils     datasets  methods   base     

loaded via a namespace (and not attached):
 [1] tools_3.6.1       stringr_1.4.0     rstudioapi_0.10   pryr_0.1.4        jsonlite_1.6      gtools_3.8.1      R.oo_1.22.0      
 [8] magrittr_1.5      Rcpp_1.0.3        R.methodsS3_1.7.1 stringi_1.4.3     plyr_1.8.4        reshape2_1.4.3    codetools_0.2-16 
[15] packrat_0.5.0     assertthat_0.2.1 

メモリ フットプリントを確認します。

pryr::mem_used()

# 173 MB

スクリーンキャストのデモへのリンク

于 2020-01-16T01:32:06.027 に答える
3

また、ご利用はunload()1回限りとなりますのでご了承ください。を再実行せずに 2 回目に使用すると、library()あまり有益ではないエラー メッセージが表示されます

library(vegan)
#> Loading required package: permute
#> Loading required package: lattice
#> This is vegan 2.5-6
detach("package:vegan",  unload=TRUE)
detach("package:vegan",  unload=TRUE)
#> Error in detach("package:vegan", unload = TRUE): invalid 'name' argument

reprex パッケージ(v0.3.0)により 2020-05-09 に作成

于 2020-05-10T01:38:26.310 に答える