在R flextable中,如何使用自动调整对齐合并标题下的列

问题描述

我正在尝试使用R中的flextable包从书中复制表格。我在表格中标有align(align = "center",part = "all")的标题下方有两列,如果我使用它们,它们的对齐方式不佳autofit(part = "all")

enter image description here

有没有一种方法可以解决此问题,从而使标题下的列不向右偏移?

这是完整的代码:

Opinions <- read.table("http://users.stat.ufl.edu/~aa/cat/data/Envir_opinions.dat",header = TRUE,stringsAsFactors = TRUE)
# Make contingency table
tab <- as.matrix(addmargins(xtabs(~y1 + y2,data = Opinions)))

library(tidyverse)  # for tibble()

# Add label as the first column and variable names
`Table 8.1` <- tibble(`Pay Higher Taxes` = c("Yes","No","Total"),Yes = tab[,1],No = tab[,2],Total = tab[,3])

library(flextable)
my_header <- data.frame(
  col_keys = colnames(`Table 8.1`),line1 = c("Pay Higher Taxes",rep("Cut Living Standards",2),line2 = colnames(`Table 8.1`)
)

library(flextable)
flextable(`Table 8.1`,col_keys = my_header$col_keys) %>%
  set_header_df(
    mapping = my_header,key = "col_keys"
  ) %>% 
  theme_booktabs() %>% 
  merge_h(part = "header") %>% 
  merge_v(part = "header") %>% 
  merge_h(part = "body") %>% 
  merge_v(part = "body") %>%
  align(align = "center",part = "all") %>% 
  autofit(part = "all") %>% 
  set_caption(caption = "Table 8.1")

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)