Я создаю PDF, используя RMarkdown в RStudio. Часть моего PDF включает таблицы, которые я создавал с использованием пакетов Kable и KableExtra. В моей таблице я надеюсь объединить / объединить определенные ячейки по горизонтали в некоторых строках, но до сих пор не смог найти способ сделать это.
Я изучил функции KableExtra, и, похоже, не существует функции, которая специально это делает. Я пытался манипулировать таблицей, добавляя код LaTeX в ячейки, это, кажется, соединяет ячейки, но перемещает любые горизонтально смежные ячейки справа в строке на новую строку.
# Create example data
ExampleData <- data.frame(ColumnA = c(1:5), ColumnB = c(6, 7, NA, 9, 10), ColumnC = c(11, 12, NA, 14, 15), ColumnD = c(16, 17, NA, 19, 20), ColumnE = c(21:25), ColumnF = c(26:30))
# For this data I am trying to merge the adjacent NA cells, and add the text "Missing Values" to the merged cell. So I tried adding latex code to the first NA cell
ExampleData$ColumnB[3] <- c("\\multicolumn{3}{|c|}{Missing Values} \\\\")
# Create kable table
ExampleDataKable <- ExampleData %>%
mutate_all(linebreak) %>%
kable(format = "latex", escape=F, align=c("l", "c", "c", "c", "c", "c"))
# Print table in PDF output
print(ExampleDataKable)
Похоже, это скорее объединение / объединение существующих ячеек, создание дополнительных ячеек, которые затем объединяются с ячейкой, в которой находится код LaTeX, и перемещение соседних ячеек вправо на новую строку. Я надеялся, что смогу объединить существующие ячейки NA в кадре данных и добавить пропущенные значения текста в ячейку. В идеале я хотел бы попытаться сохранить таблицу как таблицу Kable, чтобы использовать возможности форматирования KableExtra.