35

搜索stackoverflow问题,我发现了这个链接: 下载自定义文件时文件下载错误

但是,我的情况有点不同(我认为):

1)当我从 CRAN 安装一些包(或者只是一些通常与所需包一起安装的依赖项)时,我收到了这个烦人的警告。

2)下载的长度似乎总是等于报告的长度,所以应该没有警告。
作为示例,我将刚刚出现在更新中的警告复制粘贴到此处mgcv

Warning message:
In download.file(url, destfile, method, mode = "wb", ...) :
  downloaded length 1886962 != reported length 1886962

mode参数已设置为“wb”,因此 SO 链接中提供的解决方案似乎不起作用。

这很奇怪,因为我最近因为其他原因重新安装了 R 和 RStudio,但是这个警告并没有消失。

欢迎任何建议。

4

4 回答 4

2

将最大超时选项增加到默认设置之外

尝试options(timeout = max(1000, getOption("timeout")))

此问题通常是由于尝试下载超过 R 内置的“超时”选项的大文件 (> 50 MB) 引起的。神秘的错误消息表明下载的数量小于请求的总数量,因为请求中途被杀。从?download.file()文档:

传输的许多部分的超时可以通过选项 timeout 设置,默认为 60 秒。这通常不足以下载大文件(50MB 或更多),因此在包中使用 download.file 时应增加此值。请注意,在最新版本的 R 中,用户可以通过环境变量 R_DEFAULT_INTERNET_TIMEOUT 设置默认超时,因此为了确保这不会减少包应该使用类似的东西

options(timeout = max(300, getOption("timeout")))
于 2021-08-26T20:20:36.060 回答
1

我在 windows 或 linux 服务器上遇到过同样的问题。我认为这可能是由网络速度引起的。我尝试第二次甚至第三次安装此软件包(使用函数 install.packages)或从 CRAN 手动下载所需的软件包,然后安装它并解决了问题。

于 2015-01-24T09:33:18.113 回答
1

我通过访问此站点并下载所需的软件包解决了我的问题。不同长度的问题是由于无法从 R 完全下载文件夹,所以我直接下载它并从 Packages 中的安装按钮调用它并选择 zip 文件而不是 CRAN。然后只需选择文件夹,这就是我的解决方案。

于 2019-07-05T18:03:48.223 回答
0

以供参考:

我正在运行 Windows Vista,并且在安装各种软件包时遇到相同的错误(尽管显示的数字相同,但下载大小报告为不等于报告的长度)。尽管报告了错误,但这些软件包似乎安装正确。

RStudio 版本 0.98.1091

> 系统信息()

release                                                 Vista x64
version                                build 6002, Service Pack 2

> 版本

platform       x86_64-w64-mingw32          
version.string R version 3.1.2 (2014-10-31)

我的猜测(不了解install.packages代码的内部结构)是,虽然报告了整数,但它们并没有作为整数进行比较,因此会引发错误。

于 2015-01-20T18:42:47.120 回答