【问题标题】:Using R offline - problems with indexing and version离线使用 R - 索引和版本问题
【发布时间】:2017-09-29 13:08:43
【问题描述】:

真的希望有人能帮忙。

我们需要在无法访问互联网的环境中运行 R。

因此,在在线环境中工作时,我使用了 R 命令:

pkg.list = available.packages()
download.packages(pkgs = pkg.list, destdir = "C:\\MyRPackages")

下载当前软件包。这些被下载为tar.gz 文件。我把这些转移到没有互联网的环境中。

然后我尝试了这个命令(遵循Offline install of R package and dependencies 中的建议):

library(tools)
write_PACKAGES()

对包进行“索引”。这似乎不起作用,因为它没有按预期创建 PACKAGES 和 PACKAGES.gz。

有趣的是,当我尝试使用几个 .zip 文件的包时,这很有效,因此认为 R 无法识别 tar.gz 文件是有原因的。但无论如何,当我尝试时:

install.packages("ggplot2", contriburl="file:///path/to/packages/")

我收到一条错误消息,指出当前版本的 R 不支持这些包。

所以我似乎有两个问题:

  • 关于使用 Write_PACKAGES 命令的问题
  • 关于版本历史的问题

如果您对此提出任何建议,将不胜感激。

【问题讨论】:

    标签: r


    【解决方案1】:

    这些文件被下载为tar.gz 文件。

    这似乎是download.packages 中的一个错误或至少是意外行为。该函数的文档说

    type 字符串,指明包的类型:见 install.packages。

    在 Windows 上,未指定 typeinstall.packages 将下载二进制文件而不是源文件。

    要解决此问题,您可以在 download.packages 调用中手动指定 type="win.binary"

    download.packages(pkgs = pkg.list, destdir = "C:\\MyRPackages", type="win.binary")
    

    完成此操作后,您应该有一个包含 zip 文件的目录,这些文件就是您的软件包。然后你可以安装它们

    install.packages("pkgname_x.x-x.zip", repos=NULL)  # not contriburl
    

    【讨论】:

    • 非常感谢.....我没有意识到,但这已经有很大帮助了。谢谢!
    • 不用担心。如果这对您有所帮助,请考虑支持和/或接受它,以便其他人可以看到它。
    • 当然可以...但抱歉我是新手,我该如何投票/接受?
    • 点击答案左侧的三角形来支持/反对。点击勾选标记接受它。
    猜你喜欢
    • 1970-01-01
    • 2022-07-27
    • 1970-01-01
    • 1970-01-01
    • 2011-12-17
    • 2022-11-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多