提问人:tangerine7199 提问时间:10/6/2023 更新时间:10/6/2023 访问量:33
在分组的 Kable 中重复列标题
Repeat Column Headers In Grouped Kable
问:
我有一个数据帧:
df1 <- data.frame(inst = c("A", "B", "C", "D", "E", "F", "G"),
year_1_type1 = c(1,5,3,8,7,9,4),
year_2_type1 = c(5,7,8,3,5,2,6),
year_1_type2 = c(1,5,3,8,7,9,4),
year_2_type2 = c(5,7,8,3,5,2,6))
我正在尝试创建一个带有重复标头的分组 kable 输出。你会看到我有一个按类型分组以避免混淆的功能,但它不允许我重复year_1和year_2。我尝试添加并出现错误header_above
col.names
Error in round(x[, j], digits[j]) :
non-numeric argument to mathematical function
df1 %>%
kbl(caption = '<b>Table 5</b>-Comparison of Types and Years', align='l', col.names = "inst", "year 1", "year 2", "year 1", "year 2") %>%
kable_classic(full_width = T, html_font = "Arial Narrow") %>%
kable_styling() %>%
add_header_above(c(" " = 1, "Type 1" = 2,
"Type 2"=2), align = "l")
答:
1赞
r2evans
10/6/2023
#1
您的错误与分组标头无关,您在调用中有一个拼写错误:kbl
kbl(..., col.names = "inst", "year 1", "year 2", "year 1", "year 2") %>%
# ^^^ missing a c( to start the vector, and a closing )
试试这个:
df1 %>%
kbl(caption = '<b>Table 5</b>-Comparison of Types and Years', align='l',
col.names = c("inst", "year 1", "year 2", "year 1", "year 2")) %>%
kable_classic(full_width = T, html_font = "Arial Narrow") %>%
kable_styling() %>%
add_header_above(c(" " = 1, "Type 1" = 2, "Type 2"=2), align = "l")
评论
1赞
tangerine7199
10/6/2023
啊感谢您的帮助!
1赞
r2evans
10/6/2023
找到这个问题的一个技巧是逐个删除 -pipe 中的调用,以确认错误是在哪个函数中发出的。在这种情况下,它缩小到第一个,偶然的检查暗示它应该可能是一个向量,但事实并非如此。 调试 R 有时可能很困难,最好使用这些技术:-)%>%
col.names
评论