当使用 sql 块分配数据帧时,R 笔记本不会编织
R notebook won't knit when data frame has been assigned from with sql chunk
我有一个 R 笔记本,我在其中使用 sql 块从数据库中读取数据,然后将其分配给数据框。然后我想在 R 笔记本中的 R 块中使用它,所以我在 sql 块中使用 output.vars 选项。
当我 运行 all 然后预览它完美地工作但是当我编织它时我得到错误:"Error in eval(expr, envir, enclos) : object 'x' not found".
以下是一些可以重现此错误的简单代码:
---
title: "R Notebook"
output:
html_notebook: default
html_document: default
---
```{r setup}
library(DBI)
library(RSQLite)
db = dbConnect(SQLite(), dbname = "C:/R/chinook.db")
```
```{sql connection = db, output.vars = 'x'}
SELECT * FROM artists
```
```{r}
x[1:10,]
```
我正在使用:
- R 版本 3.4.0 (2017-04-21)
- 平台:i386-w64-mingw32/i386(32 位)
- 运行 下:Windows 7 x64(内部版本 7601)Service Pack 1
- RStudio 1.0.143
- DBI_0.6-1
- knitr_1.15.1
该示例使用来自 sqlitetutorial.net http://www.sqlitetutorial.net/download/sqlite-sample-database/?wpdmdl=94.
的 SQLite 示例数据库
我也尝试过不同类型的数据库,但都没有成功。
我不确定中间的语法块是否有效。你为什么不喜欢:
```{r}
library(DBI)
library(RSQLite)
db <- dbConnect(SQLite(), dbname = "C:/R/chinook.db")
x <- dbGetQuery(db, 'SELECT * FROM artists')
```
```{r}
x[1:10,]
```
我认为你必须将 output.vars
更改为 output.var
```{sql connection = db, output.var = 'x'}
SELECT * FROM artists
```
对我来说很管用。
我有一个 R 笔记本,我在其中使用 sql 块从数据库中读取数据,然后将其分配给数据框。然后我想在 R 笔记本中的 R 块中使用它,所以我在 sql 块中使用 output.vars 选项。
当我 运行 all 然后预览它完美地工作但是当我编织它时我得到错误:"Error in eval(expr, envir, enclos) : object 'x' not found".
以下是一些可以重现此错误的简单代码:
---
title: "R Notebook"
output:
html_notebook: default
html_document: default
---
```{r setup}
library(DBI)
library(RSQLite)
db = dbConnect(SQLite(), dbname = "C:/R/chinook.db")
```
```{sql connection = db, output.vars = 'x'}
SELECT * FROM artists
```
```{r}
x[1:10,]
```
我正在使用:
- R 版本 3.4.0 (2017-04-21)
- 平台:i386-w64-mingw32/i386(32 位)
- 运行 下:Windows 7 x64(内部版本 7601)Service Pack 1
- RStudio 1.0.143
- DBI_0.6-1
- knitr_1.15.1
该示例使用来自 sqlitetutorial.net http://www.sqlitetutorial.net/download/sqlite-sample-database/?wpdmdl=94.
的 SQLite 示例数据库我也尝试过不同类型的数据库,但都没有成功。
我不确定中间的语法块是否有效。你为什么不喜欢:
```{r}
library(DBI)
library(RSQLite)
db <- dbConnect(SQLite(), dbname = "C:/R/chinook.db")
x <- dbGetQuery(db, 'SELECT * FROM artists')
```
```{r}
x[1:10,]
```
我认为你必须将 output.vars
更改为 output.var
```{sql connection = db, output.var = 'x'}
SELECT * FROM artists
```
对我来说很管用。