「MASS」パッケージをインストールできません。
> library(MASS)
Error in library(MASS) : there is no package called ‘MASS’
ローカルからMASSパッケージをインストールしようとしました:
> utils:::menuInstallLocal()
package ‘MASS’ successfully unpacked and MD5 sums checked
Warning: cannot remove prior installation of package ‘MASS’
「MASS」も削除できません。
> remove.packages("MASS")
Removing package from ‘C:/Program Files/R/R-3.0.1/library’
(as ‘lib’ is unspecified)
Error in find.package(pkgs, lib) : there is no package called ‘MASS’
また、このオプションではパッケージをインストールできませんでした:
> options(install.lock=T)
> utils:::menuInstallLocal()
package ‘MASS’ successfully unpacked and MD5 sums checked
Warning: cannot remove prior installation of package ‘MASS’
Warning: restored ‘MASS’
Warning message:
In file.copy(savedcopy, lib, recursive = TRUE) :
problem copying C:\Program Files\R\R-3.0.1\library\00LOCK\MASS\libs\x64\MASS.dll to C:\Program Files\R\R-3.0.1\library\MASS\libs\x64\MASS.dll: Permission
そして、install.packagesを使用すると:
> install.packages("C:\\MASS_7.3-35.Zip",repos=NULL)
package ‘MASS’ successfully unpacked and MD5 sums checked
Warning: cannot remove prior installation of package ‘MASS’
Warning: restored ‘MASS’
Warning message:
In file.copy(savedcopy, lib, recursive = TRUE) :
problem copying C:\Program Files\R\R-3.0.1\library\00LOCK\MASS\libs\x64\MASS.dll to C:\Program Files\R\R-3.0.1\library\MASS\libs\x64\MASS.dll: Permission
RをORE(Oracle R Enterprise)で使用することに言及する必要があります。
ここでいくつかのことが起こる可能性があります。最初にライブラリの場所を把握することから始めます。
Sys.getenv("R_LIBS_USER")
あなたが与えた情報からあなたのものをすでに知っています:C:\ Program Files\R\R-3.0.1\library
00LOCK
というファイルがあると思います。 ?install.packages
から:
パッケージのインストールが非常にひどく失敗して、ロックディレクトリが削除されない可能性があることに注意してください:これにより、ロックディレクトリが手動で削除されるまで、ライブラリディレクトリ(またはパッケージの--pkglock)への追加インストールが禁止されます。
そのファイルを削除する必要があります。 pacman
パッケージがインストールされている場合は、p_unlock()
を使用するだけで済み、00LOCK
ファイルは削除されます。 00LOCK
ファイルが削除されるまで、pacman
をインストールできません。
pacman
をインストールするには、次を使用します。
install.packages("pacman")
2番目の問題がある可能性があります。これは、何らかの形でMASS
を破損した場所です。これは、私の経験では、別のRセッションで使用中のパッケージを更新しようとすると発生する可能性があります。これを引き起こす他の方法もあると確信しています。この問題を解決するには、次を試してください。
Sys.getenv("R_LIBS_USER")
に移動します。あなたの場合、これは:C:\ Program Files\R\R-3.0.1\libraryMASS
パッケージを手動で削除しますinstall.packages("MASS")
経由でMASS
をインストールしますこれが機能する場合は、何が機能したかを教えてください。
E1071パッケージでも同じ問題が発生しました。並行して実行されている他のRセッションを閉じるだけで、準備完了です。
Guannan Shenが示した解決策には、通常は気付かれない欠点が1つあります。 (Guannan Shen、私はあなたにリンクしようとしたか、あなたが投稿しようとしましたが、できませんでした。)
install.packages()
をスーパーユーザーとして実行するためにSudo R
を実行すると、ライブラリをインストールするディレクトリは、スーパーユーザーであるroot
ユーザーに属します。
したがって、次回ライブラリを更新する必要があるとき、Sudo
を実行したことを覚えていないため、root
をファイルとディレクトリの所有者のままにしておきます。誰もroot
を上書きできないため、ファイルを移動しようとすると最終的にエラーが発生します。
実行することで回避できます
Sudo chown -R yourusername:yourusername *
ローカルライブラリを含むlib
ディレクトリで、yourusername
をインストールの適切な値に置き換えます。その後、もう一度インストールしてみます。
install.packages()
で間違った引用符文字を使用した後、引用符を修正すると、「以前のインストールを削除できません」というエラーが発生しました。 Rを閉じて再起動しました。
私の場合、nlme
パッケージのインストールに問題があります。
mv: cannot move '/home/guanshim/R/x86_64-pc-linux-gnu-library/3.4/nlme'
to '/home/guanshim/R/x86_64-pc-linux-gnu-library/3.4/00LOCK-nlme/nlme':
Permission denied
buntu 18.04を使用して、 CTRL+ALT+T ターミナルウィンドウを開くには:
Sudo R
install.packages('nlme')
q()
私の場合、Rセッションを閉じて、すべてのパッケージを再インストールする必要がありました。そのセッションで私は大きなテーブルを使って作業しましたが、これは効果があるのではないかと思います。