安装旧版本的R软件包

安装旧版本的R软件包,r,installation,version,r-faq,R,Installation,Version,R Faq,我试图使用Rpy2和ggplot2,但我得到一个错误。在联机搜索了一些错误之后,我发现出现错误是因为ggplot2包中的更改尚未反映在Rpy2中(例如,请参阅(编辑:链接现在已失效)) 因此,我现在需要安装ggplot2的旧版本。下面是我想要的伪代码: install.packages("ggplot2", version='0.9.1') 但是。如何操作?要从源代码(R中)安装较旧版本的软件包,请执行以下操作: 这样做的好处是不需要Rtools在Windows上安装二进制软件包,但只能追溯到

我试图使用Rpy2和ggplot2,但我得到一个错误。在联机搜索了一些错误之后,我发现出现错误是因为ggplot2包中的更改尚未反映在Rpy2中(例如,请参阅(编辑:链接现在已失效))

因此,我现在需要安装ggplot2的旧版本。下面是我想要的伪代码:

install.packages("ggplot2", version='0.9.1')
但是。如何操作?

要从源代码(R中)安装较旧版本的软件包,请执行以下操作:

这样做的好处是不需要Rtools在Windows上安装二进制软件包,但只能追溯到2014年9月17日(MRAN启动时)

要从命令行安装旧版本(R之外):

一旦您的计算机上本地有包源(“tarball”),您也可以通过在命令行(终端、命令提示符等)上使用
R CMD install
安装包,例如使用
wget
(如果您有):

或者,如果您使用的是Windows,则使用PowerShell的等效工具将是:

(new-object System.Net.WebClient).DownloadFile("http://cran.r-project.org/src/contrib/Archive/ggplot2/ggplot2_0.9.1.tar.gz", "./ggplot2_0.9.1.tar.gz")
或者,您也可以通过web浏览器从CRAN存档下载源文件

要从本地文件安装,只需执行以下操作:

R CMD INSTALL ggplot2_0.9.1.tar.gz
这应该适用于任何平台(与上面的警告相同,关于构建包需要工具链)



[1] 这已不再完全正确。从2016年3月起,CRAN开始托管包含Windows和Mac二进制文件的旧版本R(>5年)。现在,您可以使用
install.packages()
直接从此服务器安装。有关某些详细信息,请参阅new。

使用另一个答案中描述的
安装包对我不起作用

我找到的最佳替代方法是使用package
devtools
中的函数
install\uURL

我没有进一步探讨的另一种可能性:

  • 从包存档下载旧的.tar.gz源文件
  • 按照上记录的步骤在本地安装

  • remotes
    软件包提供了一个可以直接执行此操作的
    install\u version
    功能

    require(remotes)
    install_version("ggplot2", version = "0.9.1", repos = "http://cran.us.r-project.org")
    

    在此之前,此答案指向
    devtools
    包,该包还重新导出
    install\u version
    功能。感谢@MichaelChirico指出
    remotes
    软件包更可取。

    您可以从以下链接下载相应的zip文件版本

    在R Studio中: 工具>>安装软件包>>安装自:(选择下拉列表)

    包存档文件(.zip、.tar.gz)。


    选择您新下载的软件包zip文件并安装该软件包

    找到了一个很好的解决方案,它对我很有用(详细信息见)

    “repmis”库中的命令:

    #安装e1071和gtools软件包的旧版本。
    #创建要安装的包名称和版本的矢量
    #请注意,名称和版本号的顺序必须相同
    名称纯
    install.packages
    method 看。作为对Kurt Wheeler的回复,Kurt Hornik透露了CRAN网站的一个未记录的功能,以指定软件包的特定版本

    只要您已经安装了所有必需的依赖项,此方法就可以工作:

    package = "https://cran.r-project.org/package=svglite&version=1.2.1"
    utils::install.packages(pkgs = package, repos = NULL)
    
    注意上面的URL结构。这解决了CRAN最新版本的URL结构与存档版本的URL结构不同的问题:

    # Latest version (not available at Archive/svglite)
    https://cran.r-project.org/src/contrib/svglite_1.2.1.tar.gz
    # Archived version
    https://cran.r-project.org/src/contrib/Archive/svglite/svglite_1.2.0.tar.gz
    
    remotes::install\u version
    方法 另一个选项是使用
    remotes::install\u版本
    。但是,您将需要安装
    遥控器

    对于2014-09-17发布的软件包版本,有一个大大简化此任务的方法。它使用Revolution Analytics的MRAN服务器快照来:

    • 显示任何CRAN包的发布日期和MRAN可用性(
      可用。版本

    • 安装一个或多个软件包的指定版本(
      install.versions
      ),或

    • 安装在任何指定日期(
      install.dates
      )可用的软件包版本。它通过标准的
      install.packages
      功能从MRAN服务器进行安装,因此可以安装可用的二进制版本,而不必从源代码进行编译,并且可以包括指定日期的包依赖项


    当然,包版本和R版本的组合可能存在兼容性问题。要运行不同的R版本,请参见示例。

    另一个选项是{groundhog}包。它通过指定日期帮助从CRAN安装较旧的软件包版本。当您不记得特定的软件包版本,而是不记得脚本仍在工作的时间时,这尤其有用。在{ggplot2}的情况下,0.9.1版于2012年5月加载到CRAN上,因此我们可以从6月开始计算日期

    library("groundhog")
    groundhog.library("ggplot2", "2012-06-01")
    

    谢谢,我想这是正确的方法。太糟糕了,我现在收到:
    警告消息:package'http://cran.r-project.org/src/contrib/Archive/ggplot2/ggplot2_0.9.1.tar.gz'不可用(适用于R版本2.15.2)
    与Rcpp存在类似问题。这可能是由于包的R版本依赖关系(依赖:),或者运行的R会话不允许您执行更新。我发现对我有用的是按照Mark Butler(下面)建议的方式进行更新(R CMD安装您的_version.tar.gz)。这是我的R2.15.3版。@Antoine你在Windows上吗?“如果是,您是否安装了Rtools?”托马斯感谢您的回复。是的,我在Windows上安装了Rtools“pseudo installed”看到了吗。@Thomas我将尝试在Amazon EC2上运行我的脚本,以避免我的计算机上出现明显的本地问题(库路径、R版本与软件包版本、编译问题等)。请尝试
    检查编译
    ?这对我不起作用,请按照我的问题了解详细信息。+1,
    R CMD INSTALL
    命令在
    # Install old versions of the e1071 and gtools packages.
    
    # Create vectors of the package names and versions to install
    # Note the names and version numbers must be in the same order
    Names <- c("e1071", "gtools")
    Vers <- c("1.6", "2.6.1")
    
    # Install old package versions into the default library
    InstallOldPackages(pkgs = Names, versions = Vers)
    
    package = "https://cran.r-project.org/package=svglite&version=1.2.1"
    utils::install.packages(pkgs = package, repos = NULL)
    
    # Latest version (not available at Archive/svglite)
    https://cran.r-project.org/src/contrib/svglite_1.2.1.tar.gz
    # Archived version
    https://cran.r-project.org/src/contrib/Archive/svglite/svglite_1.2.0.tar.gz
    
    library("groundhog")
    groundhog.library("ggplot2", "2012-06-01")