I have created a table in a R Markdown document which will be knitted to a Word document.
It looks like this:
col1 <- c(rep("Theme 1", 4),
rep("Theme 2", 5),
rep("Theme 3", 2),
rep("Theme 4", 3),
"Theme 5",
rep("Theme 6", 2))
col2 <- c("Subtheme 1.1",
"Subtheme 1.2",
"Subtheme 1.3",
"Subtheme 1.4",
"Subtheme 2.1",
"Subtheme 2.2",
"Subtheme 2.3",
"Subtheme 2.4",
"Subtheme 2.5",
"Subtheme 2.6",
"Subtheme 3.1",
"Subtheme 3.2",
"Subtheme 3.3",
"Subtheme 4.1",
"Subtheme 5.1",
"Subtheme 6.1")
col3 <- c("Modul1",
"Modul1",
"Modul1",
"Modul1",
"Modul1/
Modul2/
Modul3",
"Modul1/
Modul2/
Modul3",
"Modul1/
Modul2/
Modul3",
"Modul1/
Modul2",
"Modul2",
"Modul1",
"Modul1",
"Modul1",
"Modul2",
"Modul1/
Modul2",
"Modul1/
Modul2",
"Modul1",
"Modul1")
col4 <- c("3 years",
"3 years",
"3 years",
"1 year",
"1 year",
"1 year",
"1 year",
"1 year",
"1 year",
"5 years",
"5 years",
"1 year",
"1 year",
"1 year",
"1 year",
"3 years",
"5 years")
col5 <- c(paste(current_year, current_year+5, sep = " / "),
paste(current_year, current_year+5, sep = " / "),
paste(current_year, current_year+5, sep = " / "),
paste(current_year),
paste(current_year, current_year+1, sep = " / "),
paste(current_year, current_year+1, sep = " / "),
paste(current_year, current_year+1, sep = " / "),
paste(current_year, current_year+1, sep = " / "),
paste(current_year, current_year+1, sep = " / "),
paste(current_year, current_year+5, sep = " / "),
paste(current_year, current_year+5, sep = " / "),
paste(current_year, current_year+1, sep = " / "),
paste(current_year, current_year+1, sep = " / "),
paste(current_year, current_year+1, sep = " / "),
paste(current_year, current_year+1, sep = " / "),
paste(current_year),
paste(current_year, current_year+5, sep = " / "))
df_complete <- data.frame(
"Dimensions" = col1,
"Subdimensions" = col2,
"Moduls" = col3,
"Turns" = col4,
"Years" = col5,
check.names = FALSE)
df_select <- data.frame("Subdimensions" = params$subdims,
check.names = FALSE)
df_select$selection <- "yes"
df_select <- merge(x = df_complete, y = df_select, by = "Subdimensions", all.x = TRUE)
df_select <- df_select [, c("Dimensions", "Subdimensions", "Moduls", "Turns", "Years", "selection")]
df_select[is.na(df_select$selection) == TRUE, "Years"] <- " "
df_select <- select(df_select, -selection)
# Datensatz sortieren
order <- c("Theme 1",
"Theme 2",
"Theme 3",
"Theme 4",
"Theme 5",
"Theme 6")
df_select$Dimensions <- factor(df_select$Dimensions, levels = order)
df_select <- df_select %>% arrange(Dimensions)
# create flextable
ft <- df_select %>%
data_to_standard_table() %>%
width(j = 1, width = 3.6, unit = "cm") %>%
width(j = 2, width = 5.4, unit = "cm") %>%
width(j = 3, width = 3.5, unit = "cm") %>%
width(j = 4, width = 3.0, unit = "cm") %>%
width(j = 5, width = 3.0, unit = "cm") %>%
merge_v(j = ~ Dimensions)
ft is now a ‘Large flextable (7 elements, 757.7 kB)’ in the global environment.
My problem is that I would like to add a footnote:
ft <- footnote(ft, j = ~ Subdimensions, i = "Subtheme 2.1",
value = as_paragraph("This is the footnote."))
I also tried to use indices, like I usually use in flextables:
footnote(ft, j = 2, i = 6)
But I keep getting the error message
Error in `[<-`(`*tmp*`, i, j, value = 0) : subscript out of bounds
And I also tried this:
footnote(ft, j = ft$header$col_keys[2], i = df_select$Subdimensions[[6]],
value = as_paragraph(""))
And even though the references work when I put only them in the console but trying to create the footnote it produces this error:
Error in get_rows_id(x[[part]], i) :
invalid row selection: unknown rownames
How can I reference to a specific cell in a ‘Large flextable’ object?