在闪亮的应用程序中显示变量的摘要(summary())

问题描述 投票:0回答:1

有谁知道如何在闪亮的应用程序中显示由summary()创建的摘要?这样也会显示值的描述(例如“平均值”、“中位数”)。

到目前为止我已经用

verbatimTextOutput()
尝试过了。

library(shiny)

# FAKE DATAFRAME
data <- reactive(  
    data.frame(
        group = sample(c("A", "B"), 100, replace = TRUE),
        var1 = round(runif(100, min = 0, max = 100), 0),
        var2 = sample(c("A", "B"), 100, replace = TRUE)
    )
)

# USER INTERFACE
ui <- fluidPage(
    verbatimTextOutput("text1")
)

# SERVER
server <- function(input, output) {
    output$text1 <- renderText({
        summary(data()$var1)
    })
}

# START APP
shinyApp(ui = ui, server = server)
r shiny
1个回答
1
投票

这可以通过

tableOutput
renderTable
来实现,如下所示。第一种方法通过
tibble::enframe
将 summary() 输出转换为 tibble,这为您提供了一个按列的表,其中第一列包含汇总统计数据的名称,而第二种方法使用
tibble::tibble
为您提供了一个按行的表,其中第一行包含摘要统计信息的名称。试试这个:

library(shiny)
library(tibble)
# FAKE DATAFRAME
data <- reactive(  
  data.frame(
    group = sample(c("A", "B"), 100, replace = TRUE),
    var1 = round(runif(100, min = 0, max = 100), 0),
    var2 = sample(c("A", "B"), 100, replace = TRUE)
  )
)

# USER INTERFACE
ui <- fluidPage(
  tableOutput("text1"),
  tableOutput("text2")
)

# SERVER
server <- function(input, output) {
  output$text1 <- renderTable({
    tibble::enframe(summary(data()$var1))
  })
  output$text2 <- renderTable({
    tibble::tibble(!!!summary(data()$var1))
  })
}

# START APP
shinyApp(ui = ui, server = server)
© www.soinside.com 2019 - 2024. All rights reserved.