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 |