由于与网络安全系统发生冲突,我可以将数据文件从互联网下载到网络中可以在 R 中使用的区域的唯一方法是通过 R 本身下载它。当我在 RStudio 中运行脚本时,它工作正常。当我尝试编写脚本时,我会收到消息 Unsupported URL
或者我会得到
Error in file(file, "rt") : cannot open the connection
Calls: <Anonymous> ... withVisible -> eval -> eval -> read.csv ->
read.table -> file
Execution halted
下面是在正常运行下工作但在编织过程中不工作的代码。
url <- "https://d396qusza40orc.cloudfront.net/repdata%2Fdata%2Factivity.zip"
download.file(url, "repdata-data-activity.zip")
unzip("repdata-data-activity.zip")
如果文件不是 zip,我可以使用
RCurl
下载它,但是当我尝试 R 崩溃时,我也尝试过 method = "curl", setInternet2(TRUE)
,并试图删除 s
来自 https
但他们都没有工作。结果是我无法生成一个有问题的针织文档。我以前遇到过一个非常相似的问题(CSV 文件不是压缩的 CSV 文件,请参见下面的链接)并尝试了建议但没有成功:R produces "unsupported URL scheme" error when getting data from https sites
我正在使用 Windows 7 和 RStudio
重复一遍:这只是在编织文档时出现的问题,而不是在运行脚本时出现的问题。
最佳答案
问题在于 https 和文件是二进制文件。通过将 URL 更改为 http 并将 file.download 设置为 mode="wb"问题得到解决并且脚本可以成功编织。
最终代码块如下
url <- "http://d396qusza40orc.cloudfront.net/repdata%2Fdata%2Factivity.zip"
download.file(url, "repdata-data-activity.zip", mode="wb")
unzip("repdata-data-activity.zip")
关于r - knitr 必须下载 zip 文件时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25341285/