【问题标题】:Installing a package from source?从源代码安装包?
【发布时间】:2013-06-04 10:28:53
【问题描述】:

我正在尝试在R 上安装旧版本的系统发育包“geiger”。我在 Windows XP 机器上。我尝试了以下构造:

install.packages(C:\geiger_1.3-1.tar.gz, repos = NULL, type = "source")

以及我能想到的每一种排列方式。

有人有什么想法吗?

编辑:返回的错误是:

Error: unexpected input in "install.packages(C:\"

【问题讨论】:

  • 你需要使用双\\或单/。

标签: r installation packages


【解决方案1】:

您不应该将文件名作为字符串传递(或者最好使用file.path)?例如install.packages(file.path("geiger_1.3-1.tar.gz"), repos = NULL, type = "source") 请记住,安装包需要传递一个字符串,在加载库时,您可以传递一个不带引号的名称(或字符串)。

在此处回复您的评论,以便我进行格式化

所以你写了install.packages(C:\Rfiles("geiger_1.3-1.tar.gz"), repos = NULL, type = "source")。请记住,install.packages 的第一个参数必须是字符向量。你传入的是C:\Rfiles("geiger_1.3-1.tar.gz"),这并不是什么。查看help(file.path)help(install.packages) 以了解如何指定文件路径的一些示例。在这种特定情况下,您应该尝试:

g.path <- file.path("C:", "Rfiles", "geiger_1.3-1.tar.gz")
install.packages(g.path, repos = NULL, type = "source")

这是(据我所知)你的包的绝对路径,不用担心反斜杠/正斜杠问题。

【讨论】:

  • 谢谢你,亚当。我使用了以下结构: install.packages(C:\Rfiles("geiger_1.3-1.tar.gz"), repos = NULL, type = "source")install .packages(C:\Rfiles("geiger_1.3-1.tar.gz"), repos = NULL, type = "source"),它们似乎都不起作用。
  • 我完全被困住了。我试过这个,没有运气。我什至回到了 R 和 geiger 的早期版本。同样的错误。
  • 您到底遇到了什么错误?在这种情况下,重要的是运行我在编辑中键入的命令。如果您遇到语法错误,则可能是命令的输入方式,而不是 R 或 gieger。
【解决方案2】:

非常感谢您的建议。我终于通过使用另一个包解决了它:“repmis”。这个包包括一个名为“InstallOldPackages”的命令,它就是这样做的。你可以指定你需要的包名和版本号。

【讨论】:

    【解决方案3】:

    在 Windows 上,您通常需要将反斜杠 \ 切换为正斜杠 /,否则会出错。我怀疑:

    install.packages("C:/geiger_1.3-1.tar.gz", repos = NULL, type = "source")
    

    会为你工作。这可能是最简单的方法。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-12-01
      • 1970-01-01
      • 2017-03-22
      相关资源
      最近更新 更多