在knitr::kable中使用glue函数出现多余输出如何解决
问题原因
多余的[1] "1"输出由glue语句中嵌套的print()函数导致:print()函数除了返回传入的参数值外,还会默认将内容打印到控制台,这部分打印内容会和kable生成的表格内容一同输出。
解决方案
glue本身支持直接在{}内传入变量,无需额外套print(),删除print()即可解决问题,修改后的函数代码如下:
myfunction <- function(mydata, mytext) { knitr::kable(mydata, caption = glue::glue("Table set {mytext}") ) }
修改后调用函数,不会再出现多余的打印行,仅会渲染出带对应标题的目标表格。
内容的提问来源于stack exchange,提问作者JaFranke
相关产品推荐
相关产品推荐

