options()$reposとすると確認できる。
> options()$repos CRAN "@CRAN@"のようになっていて、後述の available.packages() 等を行ったタイミングでミラーの一覧を示され、例えば「Japan (Tokyo) [https]」を選ぶと
> options()$repos CRAN "https://cran.ism.ac.jp"のように設定される。
options(repos=c(CRAN="@CRAN@"))手動で設定するには、
options(repos=c(CRAN="https://cran.ism.ac.jp"))のように設定すればよい。
> # RStudio + 64bit 版 GNU R 3.6.1 (CRAN 版) > options()$repos CRAN "https://cran.rstudio.com/" attr(,"RStudio") [1] TRUE
> str(options()$repos) Named chr "https://cran.rstudio.com/" - attr(*, "names")= chr "CRAN" - attr(*, "RStudio")= logi TRUEのような attr が付いている場合がある。
repos = c(CRAN="https://cran.rstudio.com/") attr(repos, "RStudio") = T options(repos=repos)のようにすれば再現できる。
available.packages()これは以下のような matrix
> class(available.packages()) [1] "matrix"
> colnames(available.packages()) [1] "Package" "Version" "Priority" [4] "Depends" "Imports" "LinkingTo" [7] "Suggests" "Enhances" "License" [10] "License_is_FOSS" "License_restricts_use" "OS_type" [13] "Archs" "MD5sum" "NeedsCompilation" [16] "File" "Repository"パッケージ名が分かっているなら
available.packages()["arules",]みたいにすると結果が得られる。
(function(pkgs,col,pat) pkgs[grep(pat,pkgs[,col]),])(available.packages(), "Package", "^arules$")もっと良い方法がありそうな気がするけど。
installed.packages()これは以下のような matrix
> class(installed.packages()) [1] "matrix"
> colnames(installed.packages()) [1] "Package" "LibPath" "Version" [4] "Priority" "Depends" "Imports" [7] "LinkingTo" "Suggests" "Enhances" [10] "License" "License_is_FOSS" "License_restricts_use" [13] "OS_type" "MD5sum" "NeedsCompilation" [16] "Built"パッケージ名(と同じ名前の付いた行名)とバージョンの一覧を得るなら以下のようにすれば得られる
> installed.packages()[,c("Version"),drop=F] Version assertthat "0.2.0" backports "1.1.2" base64enc "0.1-3" BH "1.66.0-1" bindr "0.1.1" ...