【发布时间】:2020-11-20 16:00:05
【问题描述】:
在 Word 报告中创建表格时,我经常想在变量之间添加空白行。作为一个简单的玩具示例:
library(dplyr)
library(officer)
library(flextable)
doc <- read_docx()
table_no_breaks <- mtcars %>%
count(cyl)
table_no_breaks_ft <- flextable(table_no_breaks)
doc <- doc %>%
body_add_flextable(table_no_breaks_ft) %>%
body_add_par("")
生成如下所示的表格:
我可以像这样直接在数据框中添加换行符:
table_breaks <- table_no_breaks %>%
mutate(
across(
everything(),
as.character
)
) %>%
add_row(cyl = NA, n = NA, .after = 1) %>%
add_row(cyl = NA, n = NA, .after = 3) %>%
add_row(cyl = NA, n = NA, .after = 5)
table_breaks_ft <- flextable(table_breaks)
doc <- doc %>%
body_add_flextable(table_no_breaks_ft) %>%
body_add_par("") %>%
body_add_flextable(table_breaks_ft)
print(doc, "flextable.docx")
这会产生我想要的 Word 表格:
但是,我希望能够将空白行直接添加到 flextable 而不是构建 flextable 的数据框。对我来说,这是一个格式问题而不是数据问题,我更喜欢将数据问题(数据框的操作)和格式问题(Word 表的操作)分开。非常感谢任何建议!
【问题讨论】:
-
晚了四个月,但据我所知,您的解决方案(添加空白行)就是解决方案。