7

パッケージ ( ) と、会社のネットワーク ドライブでRTIOあるパッケージ リポジトリ ( ) を作成しました。Q:/Integrated Planning/R

パッケージをフォルダーに入れました:

Q:/Integrated Planning/R/bin/windows/contrib/2.15/RTIO_0.1-2.zip

このSOの Dirk の指示に従って、次のコマンドを実行しました。

> setwd("Q:/Integrated Planning/R/bin/windows/contrib/2.15")
> tools::write_PACKAGES(".", type="win.binary")
> list.files()
[1] "PACKAGES"       "PACKAGES.gz"    "RTIO_0.1-2.zip"
>

以下のコードを使用して、ローカル リポジトリをリポジトリのリストに追加しました (他のユーザーにも同じことをしてもらいます)。

options(repos = c(getOption("repos"), RioTintoIronOre = "Q:/Integrated Planning/R"))

そして今、私のパッケージをインストールしようとすると、エラーが発生します:

> install.packages("RTIO")
Installing package(s) into ‘C:/Program Files/R/R-2.15.1/library’
(as ‘lib’ is unspecified)
Warning in install.packages :
  unable to access index for repository Q:/Integrated Planning/R/bin/windows/contrib/2.15
Warning in install.packages :
  unable to access index for repository Q:/Integrated Planning/R/bin/windows/contrib/2.15
Warning in install.packages :
  unable to access index for repository Q:/Integrated Planning/R/bin/windows/contrib/2.15
Warning in install.packages :
  package ‘RTIO’ is not available (for R version 2.15.1)

とはどういう意味unable to access index for repositoryですか? どうすれば修正できますか?

私が本当にやりたいことは、Windows の下で RStudio を IDE として使用して、他の内部 R ユーザーがこのパッケージ リポジトリを追加できるようにして、コマンドを実行したり、パッケージの新しいバージョンを取得しinstall.packages("RTIO")たりできるようにすることですupdate.packages() (おそらくIDE を使用して GUI 経由でパッケージを管理できます)。


アップデート:

agstudy's answer のおかげで、一歩近づきました。これが私が得る出力です。

> getOption("repos")
                                CRAN                            CRANextra 
    "http://cran.ms.unimelb.edu.au/" "http://www.stats.ox.ac.uk/pub/RWin" 
> setRepositories(addURLs=c(RioTintoIronOre = "file://Q:/Integrated Planning/R"))
--- Please select repositories for use in this session ---


1: + CRAN
2: + CRAN (extras)
3:   BioC software
4:   BioC annotation
5:   BioC experiment
6:   BioC extra
7:   Omegahat
8:   R-Forge
9:   rforge.net

Enter one or more numbers separated by spaces, or an empty line to cancel
1: 
> getOption("repos")
                  RioTintoIronOre 
"file://Q:/Integrated Planning/R" 
> install.packages("RTIO")
Installing package(s) into ‘C:/Program Files/R/R-2.15.1/library’
(as ‘lib’ is unspecified)
Warning in install.packages :
  cannot open compressed file '//Q:/Integrated Planning/R/bin/windows/contrib/2.15/PACKAGES', probable reason 'No such file or directory'
Error in install.packages : cannot open the connection

フォローアップの質問:

  1. を使用すると、リポジトリを選択するように求められるのはなぜsetRepositories()ですか?

  2. 数字を入力せずに「Enter」を押して確認すると、リポジトリgetOption("repos")のみが表示されます。File://Q:/Integrated Planning/R何故ですか?

  3. 私が行うinstall.packges("RTIO")と、ファイルが見つかったように見えますが、警告cannot open compressed fileとエラーが表示されますcannot open the connection。上記の出力に注意してくださいlist.files()。理由はありますか?

4

2 に答える 2

4

このメッセージを回避するには:

Warning in install.packages : cannot open compressed file '//Q:/Integrated Planning/R/bin/windows/contrib/2.15/PACKAGES', probable reason 'No such file or directory'



//URLを指定するとき に削除するには、これを試してくださいsetRepositories

> setwd("Q:/Integrated Planning/R/bin/windows/contrib/2.15")
> tools::write_PACKAGES(".", type="win.binary")
> setRepositories(addURLs=c(RioTintoIronOre = "file:Q:/Integrated Planning/R"))
> install.packages("RTIO")
于 2013-09-18T07:25:42.587 に答える
2

離れたリポジトリ(ローカルではない)でカスタムパッケージにアクセスしようとするunable to access index for repository ため、警告が表示されます。install.packages

これを修正するには、ローカルリポジトリをRオプションに追加する必要がありますrepos。ファイルパスではなく、URLパスとして追加する必要があります。file://のようなもの

このようなことをします:

      setRepositories(addURLs=c(lRioTintoIronOre = "file://Q:/Integrated Planning/R"))

すべてが正しいかどうかを確認するには、以下がTRUEを返す必要があります。

    repos <- contrib.url(getOption('repos'))
    length(grep("^file:", repos)) > 0L 
于 2012-12-11T06:55:03.170 に答える