无法使用install.packages安装R-forge软件包

时间:2012-06-19 16:16:50

标签: r svn install package r-forge

Thisquestionisaskedoverandoverandover, 在R-sig-finance邮件列表中,但我不认为它已在stackoverflow上被询问。

它是这样的:

在哪里可以获得R-forge上托管的最新版本的XYZ包?我尝试用install.packages安装它,但这就是发生的事情:

> install.packages("XYZ",repos="http://r-forge.r-project.org")
Warning message: package ‘XYZ’ is not available (for R version 2.15.0)

在XYZ的R-forge网站上看,我发现该软件包无法构建。 因此,没有下载源的链接。还有别的办法吗? 获取源代码?获得源代码后,如何将其转换为 我可以使用library("XYZ")加载的包吗?

4 个答案:

答案 0 :(得分:50)

由于一些不同的原因,R-Forge可能无法构建软件包。可能就是这样 文档尚未更新以反映代码中的最新更改。要么, 可能是某些依赖项在构建时不可用。

您可以使用svn签出源代码。首先,搜索项目 R-Forge网站并转到项目主页 - 例如http://r-forge.r-project.org/projects/returnanalytics/ 点击SCM链接转到这样的页面http://r-forge.r-project.org/scm/?group_id=579

此页面将告诉您用于结帐项目的命令。在这种情况下,你得到

  

可以使用以下命令通过匿名访问检出此项目的SVN存储库。

     

svn checkout svn://svn.r-forge.r-project.org/svnroot/returnanalytics/

如果您使用的是Windows,则可能需要下载并安装TortoiseSVN

安装TortoiseSVN后,您可以右键单击Windows资源管理器窗口并选择 “SVN结账”。在“存储库的URL:”字段中,输入除了以外的所有内容 “svn checkout”是您在R-Forge上找到的命令的一部分。在这种情况下,你会 输入“svn://svn.r-forge.r-project.org/svnroot/returnanalytics/”。

单击“确定”后,项目将下载到当前目录中。

如果您使用的是类似UNIX的系统(或者您安装了命令行客户端工具) 当您安装TortoiseSVN for Windows(这不是默认设置)时,您可以 输入R-forge在终端中给出的命令(系统终端,而不是R终端)

svn checkout svn://svn.r-forge.r-project.org/svnroot/returnanalytics/

这将在当前工作目录下创建一个新目录 包含包中的所有文件。在该目录的顶级 将是一个名为“pkg”的子目录。这个特别的项目(returnanalytics) 包含多个包。

ls returnanalytics/pkg
#FactorAnalytics  MPO  PApages  PerformanceAnalytics  PortfolioAnalytics

但是一些R-forge项目只有一个包。例如

svn checkout svn://svn.r-forge.r-project.org/svnroot/random/
#Checked out revision 14.
ls random/pkg
#DESCRIPTION  inst  man  NAMESPACE  R

现在你已经拥有了本地副本的所有代码,如果你愿意的话 安装包,你必须先建立它。

注意事项:由于R-Forge未能制造包装,因此很有可能 包装有问题。因此,如果您只是构建它,您可能会发现 有些事情没有按预期发挥作用。特别是,它可能就在那里 缺少或不完整的文档。

如果您使用的是类似UNIX的系统,则可以相对轻松地构建和安装软件包。对于像returnanalytics这样的多包项目,如果要安装,例如该 PortfolioAnalytics包,你可以这样做

R --vanilla CMD INSTALL --build returnanalytics/pkg/PortfolioAnalytics 

“PortfolioAnalytics”是包含该包的目录的名称 你想建立/安装。对于单包项目,您可以构建和安装 此

R --vanilla CMD INSTALL --build random/pkg

如果您想在Windows上构建/安装软件包,请参阅this question并按照@JoshuaUlrich提供的two links

可以在R Installation and Administrationthe R-Forge User Manualthe SVN manual中找到更多信息。

答案 1 :(得分:3)

如果(并且仅当)您拥有适合您的操作系统的工具链,那么这可能会成功:

# First download source file to your working directory
# As an example use browser to download pkg:partykit from: 
#  http://download.r-forge.r-project.org/src/contrib/partykit_1.1-2.tar.gz
# Move to working directory
# Or in the case of returnanalytics (which is a bundle of packages):
# http://r-forge.r-project.org/R/?group_id=579 and download the tar.gz (source)
# Then in R:

install.packages( "partykit_1.1-2.tar.gz", repo=NULL, type="source")
# for the first of the ReturnAnalytics packages:
install.packages( "Dowd_0.11.tar.gz", repo=NULL, type="source")

这些方向应该是“跨平台的”。 我不确定接受的答案中的说明是否适用于Macs(OSX)。 (我后来证实他们在Mac上“工作”但是发现这个过程比我上面提到的更复杂。他们确实导致一个包含表格的包的目录应该成功R --vanilla CMD INSTALL --build pathToEachPackageSeparately)< / p>

答案 2 :(得分:2)

您尝试安装的软件包的当前版本也可能需要更新版本的R,例如,您可能会看到如下错误:

“错误:此R版本为2.15.0,包''PerformanceAnalytics'要求R&gt; = 3.0.0”

然后你可以尝试更新你的R

或者,如果您遇到与我相同的情况,即尝试使用pqR(目前使用R版本2.15),您可以在此处找到过时的已实现包:

http://cran.at.r-project.org/src/contrib/Archive/PerformanceAnalytics/

您可以从R-Forge包页面到达此处 - &gt; “稳定发布:从CRAN获取PerformanceAnalytics 1.4.3541” - &gt;旧资料来源:PerformanceAnalytics存档

例如,你会发现包PerformanceAnalytics版本1.1.0只需要R&gt; = 2.14

祝你好运

答案 3 :(得分:0)

或者,您可以从GitHub安装特定的软件包,如果它在GitHub上有一个repo。

我跑了install.packages('ggfortify'),然后

  

警告消息:“包'ggfortify'不可用(对于R版本   3.3.2)”

ggfortify是同一个包的GitHub回购。

devtools库允许您直接使用install_github('username/repo')从GitHub安装软件包。

library(devtools)
install_github('sinhrks/ggfortify')