Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
247 views
in Technique[技术] by (71.8m points)

Error in installation a R package

Please help me, I cannot install "MASS" package.

> library(MASS)
Error in library(MASS) : there is no package called ‘MASS’

I tried to install MASS package from local:

> utils:::menuInstallLocal()  
package ‘MASS’ successfully unpacked and MD5 sums checked  
Warning: cannot remove prior installation of package ‘MASS’

Even I cannot remove "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’

Also with this option I couldn't install package:

> 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 FilesRR-3.0.1library0LOCKMASSlibsx64MASS.dll to C:Program FilesRR-3.0.1libraryMASSlibsx64MASS.dll: Permission 

And with 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 FilesRR-3.0.1library0LOCKMASSlibsx64MASS.dll to C:Program FilesRR-3.0.1libraryMASSlibsx64MASS.dll: Permission 

I should mention I use R with ORE (Oracle R Enterprise).

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

There could be a few things happening here. Start by first figuring out your library location:

Sys.getenv("R_LIBS_USER")

or

.libPaths()

We already know yours from the info you gave: C:Program FilesRR-3.0.1library

I believe you have a file in there called: 00LOCK. From ?install.packages:

Note that it is possible for the package installation to fail so badly that the lock directory is not removed: this inhibits any further installs to the library directory (or for --pkglock, of the package) until the lock directory is removed manually.

You need to delete that file. If you had the pacman package installed you could have simply used p_unlock() and the 00LOCK file is removed. You can't install pacman now until the 00LOCK file is removed.

To install pacman use:

install.packages("pacman")

There may be a second issue. This is where you somehow corrupted MASS. This can occur, in my experience, if you try to update a package while it is in use in another R session. I'm sure there's other ways to cause this as well. To solve this problem try:

  1. Close out of all R sessions (use task manager to ensure you're truly R session free) Ctrl + Alt + Delete
  2. Go to your library location Sys.getenv("R_LIBS_USER"). In your case this is: C:Program FilesRR-3.0.1library
  3. Manually delete the MASS package
  4. Fire up a vanilla session of R
  5. Install MASS via install.packages("MASS")

If any of this works please let me know what worked.


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...