将前3行设置为R表中的标题

将前3行设置为R表中的标题,r,header,R,Header,我有一个大型数据集,每个站点有一个子集(数据集包含多个站点)。我想在R markdown中为每个站点创建一个表,但前三行作为标题数据。这是因为我想使用KableExtra包中的add_header\u上面的函数。现在,当我在我的Markdown文档中调用这个函数时,该文件将不会编织,我猜测它是什么,因为表的排序方式(现在表头数据作为表中的变量) 下面是我用来将子集放入所需格式的代码。我知道它不整洁,但这是我需要的表格格式。下面是此转换子集的dput veg.temp <- veg.temp

我有一个大型数据集,每个站点有一个子集(数据集包含多个站点)。我想在R markdown中为每个站点创建一个表,但前三行作为标题数据。这是因为我想使用
KableExtra
包中的
add_header\u上面的
函数。现在,当我在我的Markdown文档中调用这个函数时,该文件将不会编织,我猜测它是什么,因为表的排序方式(现在表头数据作为表中的变量)

下面是我用来将子集放入所需格式的代码。我知道它不整洁,但这是我需要的表格格式。下面是此转换子集的dput

veg.temp <- veg.temp %>% select(Code, Jaar, everything()) %>% arrange(Code)
   veg.temp <- t(veg.temp)
    colnames(veg.temp) <- c("1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13","14", "15",
                            "16", "17", "18", "19", "20", "21", "22", "23", "24")

原因可能是数据的结构。这可能有效(假设您的数据存储在
df

dt <- as.data.frame(df)
colnames(dt) <- as.character(unlist(dt[3,])) ## taking row 3 ("jaar") as column names

my_header1 <- c(rownames(dt)[1],as.character(unlist(dt[1,]))) # create a header from rowname of row 1 and the contents
my_header2 <- c(rownames(dt)[2],as.character(unlist(dt[2,]))) # same for row 2

# HTML table
kable(dt[4:nrow(dt),], format = "html", caption = "Demo Table") %>%   # picking only rows 4 ff
  kable_styling(bootstrap_options = "striped",
                full_width = F) %>%
  add_header_above(header = my_header2) %>% # adding headers
  add_header_above(header = my_header)  # adding headers

dt谢谢,这至少解决了我的问题。
dt <- as.data.frame(df)
colnames(dt) <- as.character(unlist(dt[3,])) ## taking row 3 ("jaar") as column names

my_header1 <- c(rownames(dt)[1],as.character(unlist(dt[1,]))) # create a header from rowname of row 1 and the contents
my_header2 <- c(rownames(dt)[2],as.character(unlist(dt[2,]))) # same for row 2

# HTML table
kable(dt[4:nrow(dt),], format = "html", caption = "Demo Table") %>%   # picking only rows 4 ff
  kable_styling(bootstrap_options = "striped",
                full_width = F) %>%
  add_header_above(header = my_header2) %>% # adding headers
  add_header_above(header = my_header)  # adding headers