如何计算count结果表n列总和 并在dplyr管道中调用作为kable表格备注
解决方案
管道内嵌直接调用(适配kable场景)
直接在管道链中用base R语法即可实现单行嵌入,无需拆分原有工作流:
library(dplyr) library(knitr) mtcars %>% filter(vs == 1) %>% count(cyl) %>% # {}包裹操作后可用.代指前序输出的计数表,sum(.$n)为base R原生求和逻辑 {kable(., caption = paste0("n = ", sum(.$n)))}
运行后生成的表格标题会自动展示n = 14,完全匹配需求。
纯base R单行实现
如果不需要走dplyr管道,纯base R的单行写法如下,输出结果直接为n列总和:
# 对应带筛选的场景 sum(table(subset(mtcars, vs == 1, select = cyl)))
也可以直接把这个值嵌入kable生成逻辑:
kable(count(mtcars[mtcars$vs==1,], cyl), caption = paste0("n = ", sum(table(subset(mtcars, vs == 1, select = cyl)))))
内容的提问来源于stack exchange,提问作者writer_typer
相关产品推荐
相关产品推荐

