This vignette introduces how to create multi level headers.
library(ftExtra)
<- iris[1:2, ] %>% as_flextable
ft ft
Sepal.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.
%>% separate_header() ft
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"
%>% separate_header(sep = "e") ft
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.
%>% span_header() ft
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 |