Knitr和kable找不到数据框

时间:2015-06-02 19:12:14

标签: r knitr

我试图在word文档的knitr中显示一个简单的表格。我有以下代码:

library(knitr)
a<-c(1,2,3,4,5,6)
b<-c(1,2,3,4,5,6)
tab<-data.frame(a,b)

在控制台中正确运行

knitr::kable(tab)

然而,当被放入降价文件时,称为“medinventory&#39;代码无法正常运行并返回以下错误:

````{r echo=FALSE,results='asis'}
knitr::kable(tab)
````  

processing file: medinventory.Rmd
|......................                                           |  33%
ordinary text without R code

|...........................................                      |  67%
label: unnamed-chunk-1 (with options) 
List of 2
$ echo   : logi FALSE
$ results: chr "asis"


Quitting from lines 17-18 (medinventory.Rmd) 
Error in is.data.frame(x) : object 'tab' not found
Calls: <Anonymous> ... eval -> eval -> <Anonymous> -> colnames ->                              
is.data.frame
Execution halted

那么数据框是在globalEnvr中,但是没有被markdown识别?我很感激任何相关问题的链接以及答案。

2 个答案:

答案 0 :(得分:5)

感谢@Molx的回答,感谢@ D.Mercer的评论。降价代码中的所有内容。

```{r echo=FALSE,results='asis'}
library(knitr)
a<-c(1,2,3,4,5,6)
b<-c(1,2,3,4,5,6)
tab<-data.frame(a,b)
knitr::kable(tab)
```

答案 1 :(得分:0)

我有同样的问题。可以在下一个代码块中访问在先前代码块中创建的对象。你遇到的问题是因为你可能忘记定义tab对象之前或之前的代码没有运行,而不是@ D.Mercer所建议的。