在 RStudio 中进行快捷编织时无法打开连接

Can't open connection when shortcut-knitting in RStudio

我有一个通过 Google Drive 公开共享的 CSV 文件。我使用 bit.ly 生成了一个不错的短片 URL,我可以通过

将它读入 R 中
read.csv("http://bit.ly/1pRClOk")

(这是一个非常小的数据框,9x17,所以不要担心尝试它。) 我把我的代码放在一个 .Rmd 文档中,如果我 运行 knit("csvtest.Rmd"),我可以从控制台 knit 它就好了,但是如果我使用 Knit HTML 按钮编织在 RStudio (Ctrl-Shift-K) 中,我得到

Error in file(file, "rt"): Cannot open the connection.

总的来说,我更喜欢使用快捷方式编织,因为这样做似乎是在它自己的 R 会话中编织,这意味着我可以确定我不会不小心引用我的全局环境中的某些东西。我还想分发 .Rmd 文件,而不必向人们解释他们需要从控制台明确 knit

有什么方法可以让我在使用 knit 快捷方式时使连接正常工作?

我正在使用 Windows 7 并使用当前版本的 RStudio (0.98.1091) 和 knitr (1.8)。

MWE

使用此文档另存为csvtest.Rmd。我可以在 RStudio 中逐行 运行 代码,没问题,键入 knit2html("csvtest.Rmd") 会生成包含数据的 HTML 文档。通过快捷方式编织会产生上述错误。

---
title: "Can knitr open connections?"
output: html_document
---

```{r}
reentry = read.csv("http://bit.ly/1pRClOk")
head(reentry)
```

如果您只关心 Windows 下的解决方案,我相信您需要在读取文件之前 setInternet2(TRUE) 在 te Rmd 文件中,因为它本质上是一个 HTTPS link ,默认情况下您无法将其读入 R。

一个更便携的解决方案是在阅读之前使用downloader包下载文件(您可以将其下载到tempfile())。