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

时间:2015-01-13 23:10:17

标签: r connection rstudio knitr

我有一个CSV文件,我通过Google云端硬盘公开分享。我使用bit.ly来生成一个很好的短URL,我可以通过

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

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

  

file(file, "rt")出错:无法打开连接。

一般来说,我更喜欢使用快捷方式编织,因为这样做似乎编织了它自己的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)
```

1 个答案:

答案 0 :(得分:4)

如果你只关心Windows下的解决方案,我相信在你读取文件之前你需要在{Rmd文件中setInternet2(TRUE),因为它本质上是一个HTTPS链接,默认情况下你不能读入R。

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