加载plyr包时出现问题

10

我使用 R 2.13.1,尝试在 R 中加载“plyr 1.6”包但未成功。我已将其手动安装到目录“~/R/library”中。 我的代码是:

.libPaths("~/R/library")
 library(plyr)

我得到了以下信息:

在运行library(plyr)时出现错误:'plyr'不是一个有效的已安装包。

使用其他软件包("chron","zoo","ismev","Lmoments")都能正常工作,但对于软件包“plyr”却不行,并且我不知道发生了什么。我尝试过安装和加载较早版本的“plyr”,但结果相同。

由于我被卡住了,非常感谢任何帮助! 敬礼 Sisse


2
你已经采取了哪些“手动安装”软件包的步骤?无论如何,从CRAN安装有什么问题吗?我认为这也确保了plyr所依赖的必要软件包已经被安装... - Nick Sabbe
.libPaths() 返回什么?installed.packages()["plyr",] 呢? - Brian Diggs
我下载了.tar.gz文件并解压缩。当我使用“install.packages(“package”)”时,我收到以下消息:警告:无法访问存储库http://mirrors/dotsrc.org/cran/src/contrib的索引。 - Sisse Camilla Lundholm
.libPaths() 返回:"/home/scl/R/library" "/usr/local/lib/R/site-library" "/usr/lib/R/site-library" "/usr/lib/R/library"。"installed.packages()["plyr"]" 返回 NA。所以,我猜它甚至没有被安装。 - Sisse Camilla Lundholm
你提供的 install.packages("plyr") 的错误信息表明你的镜像站点设置有误。正确的应该是 mirrors.dotsrc.org/cran,而不是 mirrors/dotsrc.org/cran。最简单的设置镜像的方法是使用 chooseCRANmirror()。并且你是对的,plyr 还没有被安装,因为 installed.packages()["plyr",] 的结果显示如此(你确实在方括号内包含了逗号,对吗?) - Brian Diggs
是的,那当然是个好点子。我已经在 /etc/apt/sources.list 文件中把错误的句号改成了斜杠。非常感谢你的帮助!经过 10 小时的工作,我现在只能等到明天才能看看它是否奏效。 - Sisse Camilla Lundholm
3个回答

15

这不是手动安装 plyr 的答案,而是关于为什么你首先需要手动安装的答案。

我怀疑你的 CRAN 镜像设置不正确。要检查,请键入

options("repos")[[1]][1]

这应该返回类似以下内容:

> options("repos")[[1]][1]
                                    CRAN 
"http://streaming.stat.iastate.edu/CRAN" 
> 
尝试将您的仓库设置为不同的镜像,例如: options(repos="http://streaming.stat.iastate.edu/CRAN") 或使用其他镜像
然后尝试加载plyr。
install.packages("plyr")
library("plyr") 

并且让我们知道发生了什么。


3

您可能需要查看?install.packages。它使从CRAN安装软件包变得非常简单。就像install.packages(pkgs="plyr")一样简单。


这基本上是与Hadley在manipulatr列表@googlegroups.com上发布的问题相同的建议。 - IRTFM

2
解包 tar.gz 文件只适用于仅包含 R 代码的软件包。 plyr 使用外部代码,如果仅将源文件提取到库中,则不会编译该代码。
使用 install.packages 和参数 repos = NULL 来安装源文件。
install.packages("path/to/the/file/plyr_1.6.tar.gz", repos = NULL)

长期来看,解决您的互联网问题是最好的解决方案。如果您使用的是企业网络,请与网络管理员联系,因为他们可能正在阻止流量。

我曾经遇到过另一个R包的类似问题。我必须添加type="source"才能使它工作'install.packages("D:/xyz.tar.gz", type="source",repos = NULL)'。 - user131476

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接