首页>Program>source

请帮助我,我无法安装" 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)一起使用。

最新回答
  • 1月前
    1 #

    这里可能发生了一些事情.首先确定您的图书馆位置:

    Sys.getenv("R_LIBS_USER")
    

    我们已经通过您提供的信息了解您的信息: C:\Program Files\R\R-3.0.1\library

    我相信您那里有一个名为 00LOCK的文件 .从 ?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.

    您需要删除该文件.如果你有 pacman 安装的软件包,您可能只用过 p_unlock()00LOCK 文件已删除.您无法安装 pacman 现在直到 00LOCK 文件已删除。

    要安装 pacman 使用:

    install.packages("pacman")
    

    可能还有第二个问题.这是您以某种方式损坏了 MASS的地方 .以我的经验,如果您尝试在另一个R会话中使用某个软件包时对其进行更新,则可能会发生这种情况.我相信还有其他方法也可以导致这种情况.要解决此问题,请尝试:

    关闭所有R会话(使用任务管理器以确保您真正没有R会话)Ctrl+Alt+Delete< / li>

    转到您的图书馆位置 Sys.getenv("R_LIBS_USER") .您的情况是: C:\Program Files\R\R-3.0.1\library

    手动删除 MASS 包装

    启动R的原始会话

    安装 MASS 通过 install.packages("MASS")

    如果上述任何一项有效,请告诉我什么有效。

  • 1月前
    2 #

    我对e1071软件包有同样的问题.只需关闭并行运行的任何其他R会话,您就可以顺利进行。

  • 1月前
    3 #

    由Guannan Shen指出的解决方案有一个通常不会引起注意的缺点. (Guannan Shen,我尝试链接到您或您发布信息,但我无法。)

    运行 sudo R时 为了运行 install.packages() 作为超级用户,安装该库的目录最终属于 root 用户,又称超级用户。

    因此,下次您需要更新库时,您将不记得您曾经运行过 sudo ,因此离开 root 作为文件和目录的所有者; 最终在尝试移动文件时导致错误,因为没有人可以覆盖 root 但他们自己。

    可以通过运行

    来避免
    sudo chown -R yourusername:yourusername *
    

    在目录 lib中 包含您当地的图书馆,取代 yourusername 根据安装中的适当值.然后尝试再次安装。

  • 1月前
    4 #

    install.packages()中使用了错误的引号字符后 ,更正引号会导致"无法删除以前的安装"错误.关闭并重新启动R是可行的。

  • 1月前
    5 #

    对于我来说,我不得不关闭R会话并重新安装所有软件包.在那次会议上,我使用了大桌子,我怀疑这可能起到了作用。

  • C ++中与平台无关的GUID生成?
  • javascript:RxJS MergeMap如何工作?