使用 knitr 和 R Markdown,我可以使用以下命令从矩阵生成表格输出:
```{r results='asis'}
kable(head(x))
```
但是,我正在寻找一种使kable
代码隐含的方法,因为我不想将回显的代码与它混淆。本质上,我想要这个:
```{r table=TRUE}
head(x)
```
…产生一个格式化的表格(而不是正常的output='markdown'
)输出。
我实际上认为这必须非常简单,因为这是一个非常明显的要求,但是我找不到任何方法来实现这一点,无论是通过文档还是在网络上。
我创建输出挂钩的方法失败了,因为一旦数据到达挂钩,它就已经格式化,不再是原始数据。即使指定results='asis'
,钩子也会以字符串而不是矩阵的形式获取输出。这是我尝试过的:
default_output_hook <- knit_hooks$get('output')
knit_hooks$set(output = function (x, options)
if (! is.null(options$table))
kable(x)
else
default_output_hook(x, options)
)
但就像我说的,这失败了,因为x
不是原始矩阵而是字符串,results
我指定的选项的值并不重要。