2014-01-06 4 views
10

У меня есть кадр данных, который выглядит следующим образом:Создания хорошего выхода KABLE в RStudio

er.frame <- structure(c(0.475, 0.525, 0.45, 0.475, 0.45, 0.55, 0.425, 0.5, 
0.5, 0.4, 0.45, 0.375, 0.55, 0.425, 0.5, 0.475, 0.4, 0.45, 0.375, 
0.55, 0.425), .Dim = c(7L, 3L), .Dimnames = list(NULL, c("CSP.LDA.error.rate", 
"CSP.SWLDA.error.rate", "CSP.SVM.error.rate"))) 

kable(er.frame) 

| CSP.LDA.error.rate| CSP.SWLDA.error.rate| CSP.SVM.error.rate| 
|-------------------:|---------------------:|-------------------:| 
|    0.475|     0.500|    0.500| 
|    0.525|     0.500|    0.475| 
|    0.450|     0.400|    0.400| 
|    0.475|     0.450|    0.450| 
|    0.450|     0.375|    0.375| 
|    0.550|     0.550|    0.550| 
|    0.425|     0.425|    0.425| 

Я хотел бы иметь, что kable выхода будет обработан knitr и сделать хороший стол в докладе HTML , После документации в ?kable, я сделал этот фрагмент:

``` {r snippet} 
opts_chunk$set(results='asis') 
kable(er.frame) 
``` 

Мой HTML отчет, хотя, как генерируется RStudio, это только переспросил выход консоли (или вообще ничего, если добавить опцию output=FALSE):

## | CSP.LDA.error.rate| CSP.SWLDA.error.rate| CSP.SVM.error.rate| 
## |-------------------:|---------------------:|-------------------:| 
## |    0.425|     0.400|    0.400| 
## |    0.425|     0.475|    0.500| 
## |    0.400|     0.400|    0.400| 
## |    0.425|     0.425|    0.425| 
## |    0.425|     0.325|    0.275| 
## |    0.350|     0.375|    0.375| 
## |    0.450|     0.425|    0.425| 

выше также то, что появляется в созданном файле Markdown с сопровождающими ``` разделителей, и это выглядит просто отлично, если удалить разделители и хэш.

Как правильно вывести с помощью kable? This question's accepted answer hints at it, но не доходит до документации.

Кстати, я бегу R 2.15.1, knitr 1.5.15.

ответ

12

opts_chunk$set и opts_current$set не влияют на кусок, в котором они вызываются.

из ?opts_chunk

Примечания глобальных параметров, установленные в одной порции не будут влиять на параметры в этом самом фрагменте, и именно поэтому мы часто необходимо устанавливать глобальные параметры в отдельном блоке.

Следующая опция будет работать:

```{r, results = 'asis'} 
kable(er.frame) 
```