【问题标题】:data.table package in R 3.5 does not installR 3.5 中的 data.table 包未安装
【发布时间】:2018-09-25 02:03:48
【问题描述】:

我目前使用的是 R 3.5(测试版),我的项目中需要 data.table 包,但我的包没有安装。任何人都可以在此案中帮助我。 当我安装它时,它会显示以下错误。

install.packages("data.table") 将软件包安装到“C:/Users/hp/Documents/R/win-library/3.5” (因为“lib”未指定) --- 请选择本次会议使用的 CRAN 镜像 --- 仅以源代码形式提供的软件包,可能需要 C/C++/Fortran 编译:‘data.table’ 这些将不会安装

我还尝试使用 CRAN 存储库安装包 data.table_1.10.4-3.zip。但它显示以下错误。

install.packages("C:/Users/hp/Downloads/data.table_1.10.4-3.zip", repos = NULL, type = "win.binary") 将软件包安装到“C:/Users/hp/Documents/R/win-library/3.5” (因为“lib”未指定) 包‘data.table’成功解包并检查MD5总和 库(数据表) 错误:“data.table”的包或命名空间加载失败: 包“data.table”由具有不同内部结构的 R 版本安装;它需要重新安装才能与此 R 版本一起使用

谁能帮帮我?我该怎么办?

【问题讨论】:

  • 为什么要使用 R 的测试版?您绝对应该使用更稳定的版本。无论如何,您可以尝试下载 data.table tarball(此处:cran.r-project.org/src/contrib/data.table_1.10.4-3.tar.gz)并尝试install.packages("path/to/datatabletarball",repos=NULL,type="source")(如果您没有所需的工具,这可能会在 windows 下失败)。
  • R 3.5 不再处于测试阶段,但data.table 安装仍然不成功。长话短说,我降级到 R 3.4.3。根据comment I read,在更新 x.y.0 版本的 R 之前,我不会尝试升级。

标签: r data.table


【解决方案1】:

更新:data.table 1.11.0 于 2018 年 5 月 1 日被 CRAN 接受。 CRAN 二进制文件现在应该会在接下来的几天内开始更新。


上一个答案:

data.table 1.10.4-3(2017 年 10 月)在 CRAN 上的几个月里一直处于错误状态,这非常合理地阻止了二进制文件的可用。几个月前,我们已经及时修复了 dev 中的问题,只需要将下一个版本发布到 CRAN。这不是 CRAN 或 R 3.5.0 本身的问题。

在此期间,您可以使用来自 dev 的 Windows.zip 二进制文件吗?它是为您编译的,您不需要任何工具。此开发版本 1.10.5 将在 CRAN 上重命名为 1.11.0。其中没有任何内容不会出现在 1.11.0 中,因此没有额外的风险,除了它实际上还没有在 CRAN 上。

https://twitter.com/MattDowle/status/976890741543677952

【讨论】:

  • 我使用上述建议安装。我收到此错误 - package ‘data.table’ was installed by an R version with different internals; it needs to be reinstalled for use with this R version。有没有其他可用的方法?顺便说一句,我使用 R 3.5.0 版本。
  • 感谢您告诉我!我刚刚检查了 AppVeyor 上的“R-release”仍然是 R 3.4.4,因为 R 3.5 几天前才发布。我不知道更新 AppVeyor CI 需要多长时间,但如果一周后仍然有问题,请告诉我。同时,单击 R_VERSION=devel one(而不是 R_VERSION=release),这应该可以工作。请以任何方式回复,以便这里的其他人也知道。
  • 这个网站在哪里? r-datatable.com 给我一个 500 内部服务器错误。
  • @sharoz 令人沮丧的是,该域遇到了问题。我已经向域名提供商(已被另一个人购买)提出了一个报价单。它只是转发到:github.com/Rdatatable/data.table/wiki
【解决方案2】:

似乎在 Windows 中,以前的 RTools 版本(有时?)安装到目录 C:\\RBuildTools,而不是正确的 C:\\RTools 目录,这会导致问题。在 R 3.5.0 中,需要 RTools 从源代码加载 data.table 包。

RTools35.exe 与 R 3.5.0 兼容,并且在正确安装后将安装 data.table。我正在使用data.table 和 R 3.5.0 的 CRAN 版本。

我终于通过修复 RTools 安装和 PATH 来安装 data.table:

  1. 卸载 RTools

  2. 从 PATH 中手动删除旧的 C:\\RBuildTools 目录

  3. (重新)将 RTools35 安装到 C:\\RTools 目录。 (确保选择“添加到路径”选项。

  4. 通过运行 R Sys.getenv("PATH") 中的命令,在 R 中再次检查新目录 (c:\\Rtools\\bin) 是否在 PATH 中。

看到这个RStudio Communitydiscussion 有助于解决这个问题。

以及在data.table github issues 上的一个问题下提出的一些建议,尤其是 JoeFernando 很好地阐述的一个建议

【讨论】:

  • RTools 的默认安装目录 c:\Rtools 已经很长时间了。如果您将它安装在 c:\RBuildTools 中,很可能是因为您覆盖了默认设置。
  • 显然这在某些时候是默认目录,也许只是在 Windows 中?...我也看到了其他对此的引用,我不认为我会改变这个(虽然我是很久以前安装的)。不管怎样,它造成了一个重大问题,现在已经解决了。
  • 这是一个完整的帖子 - 似乎是由错误的默认目录引起的:statbandit.wordpress.com/2017/07/20/…
  • 并参与了另一个 SO 问题:stackoverflow.com/questions/28376337/…
  • 这与找到正确的mingw工具链有关。如果您不安装在默认目录中,则需要按照此处的说明设置 BINPREF:stat.ethz.ch/pipermail/r-devel/2018-February/075572.html
【解决方案3】:

R 3.5 目前处于预发布阶段。如果您当时查看 data.table 页面https://cran.r-project.org/web/packages/data.table/index.html,则 data.table 包尚未在 Windows 上为 R 3.5 编译。因此你不能用 3.5 安装它。也许你可以自己编译它。但如果 CRAN 没有为 R 3.5 制作 Windows 二进制文件,则可能出现问题。

新的 R 版本似乎有一些重大的内部变化。因此,当您尝试安装为 R 3.4 编译的以前的 data.table 版本时,R 3.5 告诉您不能。

你现在真的应该使用稳定的 R 3.4。

2018 年 4 月 25 日编辑:R 3.5 现已发布。但data.table 包仍然不适用于 R 3.5。

【讨论】:

    【解决方案4】:

    如果有人不太熟悉该程序,请详细说明 Matt Dowle 的答案:

    它对我有用。

    【讨论】:

      【解决方案5】:

      data.table 的 GitHub 提供了 data.table 的每日构建 Windows 二进制文件的说明 https://github.com/Rdatatable/data.table/wiki/Installation

      这是 Jaap 在另一个帖子中给出的答案,它对我有用..

      【讨论】:

        【解决方案6】:

        截至 4/30,这个问题在 R 3.5.0 中仍然发生在我身上。这对我有用:

        不知何故,最后一行对我不起作用,我手动安装了 data.table_1.10.4-3.zip 另外,请确保正确卸载 RTools 以前的版本,以便将其从系统中清除。 (通过其安装目录中的 unins 文件)否则您尝试安装的 RTools 将继续返回旧目录,而不是 C:\RTools..

        终于可以搞定了..

        【讨论】:

          【解决方案7】:

          我也遇到了同样的问题,发现 RTools 没有正确安装:我下载了 RTools35.exe,它试图安装在 3.4 文件夹中。当我更改 R3.5 文件夹的路径时,一切正常。

          【讨论】:

          • Rtools 不应安装在 R 文件夹中。这是一堆用于构建 R 和 R 包的工具,它不是 R 的一部分。
          【解决方案8】:

          截至 4 月 24 日星期二,CRAN 上的 data.table 二进制文件不会安装在 MSwin for R-3.5.0 上。不幸的是,使用 Rtools 3.3、3.4 和 3.5 从源代码下载和构建失败。

          devtools::install_github("Rdatatable/data.table") 适用于 Rtools3.4 但不适用于 Rtools3.5。即安装 data.table_1.10.5

          通常我会按照指示在 R 的新版本发布后等待 2-3 天,然后再从 CRAN 获取我使用的软件包的二进制文件,但我需要在 R-3.5.0 中进行修复并且需要一个包取决于数据表。 编辑 4 月 25 日:以上是在 win10 上。在 win7 上,Rtools3.5 和 Rtools3.4 都不适用于 github 版本。请参阅单独发布的解决方案。

          【讨论】:

            【解决方案9】:

            data.table 的 GitHub 提供了 data.table https://github.com/Rdatatable/data.table/wiki/Installation 的每日构建 Windows 二进制文件的说明

            这是Jaap在另一个帖子中给出的答案,

            与上面的不同,它对我不起作用......

            > utils:::menuInstallLocal()
            package ‘data.table’ successfully unpacked and MD5 sums checked
            > library(data.table)
            Error: package or namespace load failed for ‘data.table’:
             package ‘data.table’ was installed by an R version with different  internals; it needs to be reinstalled for use with this R version
            

            我会等一下这个,希望它会解决。幸运的是,我没有任何关键任务

            【讨论】:

            • 现在 GIT hub 方法似乎可以工作了。所以我的 IT 解决方案:稍等
            【解决方案10】:

            我遇到了类似的问题。事实证明,RTools35.exe(Windows 版本)中存在错误。安装程序屏幕提供默认安装目录 C:/Rtools,但如果您接受它,它实际上会安装到 C:/RBuildTools。

            我解决的问题如下:

            1. 卸载 RBuildTools 安装
            2. 新建目录 C:/Rtools
            3. 再次安装Rtools35,浏览到Rtools目录选择安装目录
            4. 将 C:/Rtools 添加到 windows PATH 环境变量中

            重启 R/Studio,然后

            library(devtools) 
            devtools::find_rtools() 
            

            现在应该返回 TRUE。

            此修复使我能够安装某些 git-hub 软件包,当 Rtools 安装到错误的目录时会引发各种错误。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2019-03-08
              • 1970-01-01
              • 2020-07-22
              • 1970-01-01
              • 1970-01-01
              • 2016-05-11
              • 2018-08-12
              • 1970-01-01
              相关资源
              最近更新 更多