繁体   English   中英

R闪亮:表中的dnn未出现在renderTable()中

[英]R Shiny: dnn in table not appearing in renderTable()

我有一个用renderTable()制成的表,我想标记行和列(不是每一个,只是整体)。 当我在控制台中运行代码时,将显示标签。 但是,当我使用renderTable()在活动的Shiny环境中运行代码时,该表将显示而没有标签。 这是我的(摘要)代码:

shinyUI(pageWithSidebar(
  headerPanel("Hello Shiny!"),
  sidebarPanel(),
  mainPanel(
     tabPanel("Pairwise Table", tableOutput("pairs") )
))

shinyServer(function(input, output, session) {
   output$pairs <- renderTable({
      dat <- data.frame(hiv=c(0,1,0,0,0,1,1,0,1,1), 
                       age=c(50,55,50,60,40,45,40,55,50,60))
      tab <- table(dat$hiv, dat$age, dnn=c("hiv","age"))
      tab
   })
 })

当我在控制台的output $ pairs中运行代码时,它将生成带有标签的表(这是我想要的):

   age
hiv 40 45 50 55 60
  0  1  0  2  1  1
  1  1  1  1  1  1

当我浏览Shiny时,它会绘制同一张表,只是没有任何标签。 知道为什么吗?

似乎Shiny不支持这种表格显示。 我开发了一个解决方案,希望对您有用。

除了使用table ,还可以使用ftable并将其包装在data.frame 这是您的shinyServer应该是这样的:

shinyServer(function(input, output, session) {
  output$pairs <- renderTable({
    dat <- data.frame(hiv=c(0,1,0,0,0,1,1,0,1,1), 
                      age=c(50,55,50,60,40,45,40,55,50,60))
    tab <- data.frame(format(ftable(dat), 
                             method = "compact", quote = F))
    tab
  }, include.rownames=FALSE, include.colnames = FALSE)
})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM