This vignette introduces how to create multi level headers.
library(ftExtra)ft <- iris[1:2, ] %>% as_flextable
ftSepal.Length | Sepal.Width | Petal.Length | Petal.Width | Species |
5.1 | 3.5 | 1.4 | 0.2 | setosa |
4.9 | 3.0 | 1.4 | 0.2 | setosa |
The separate_header() function generates multi-level headers by separating original headers (row names) by delimiters.
ft %>% separate_header()Sepal | Sepal | Petal | Petal | Species |
Length | Width | Length | Width | |
5.1 | 3.5 | 1.4 | 0.2 | setosa |
4.9 | 3.0 | 1.4 | 0.2 | setosa |
The sep argument defines delimiters by regular expression. The default delimiters are . and _. Let’s see what happens when seop = "e"
ft %>% separate_header(sep = "e")S | S | P | P | Sp |
pal.L | pal.Width | tal.L | tal.Width | ci |
ngth | ngth | s | ||
5.1 | 3.5 | 1.4 | 0.2 | setosa |
4.9 | 3.0 | 1.4 | 0.2 | setosa |
The span_header() function also generates multi-level headers. Unlike the separate_header() function, the span_header() function merges adjacent headers if they have same values.
ft %>% span_header()Sepal | Petal | Species | ||
Length | Width | Length | Width | |
5.1 | 3.5 | 1.4 | 0.2 | setosa |
4.9 | 3.0 | 1.4 | 0.2 | setosa |