首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Rshiny汇总统计信息

Rshiny汇总统计信息
EN

Stack Overflow用户
提问于 2020-12-15 07:29:06
回答 1查看 254关注 0票数 0

我是Rshiny的新手,我需要帮助在Rshiny中生成一些汇总统计数据。

我的任务的目标是创建一个select输入,允许用户从6个变量中选择一个。在用户选择一个变量之后,应该会生成输出以显示汇总统计信息。

下面是我的代码:

代码语言:javascript
复制
library(shiny)
library(dplyr)
library(ggplot2)
library(markdown)
library(gtsummary)

#################################################################

ui <- fluidPage(
  navbarPage("",
    tabPanel("Data Exploration",
             sidebarLayout(
               sidebarPanel(
                 selectInput("variable",
                             "Variable",
                             colnames(data))
               ),
               mainPanel(
                 tableOutput("table")
               )
             )
    )
  )
)
                        
                


#################################################################


server <- function(input, output) {
  sum <- reactive({
      data <- data %>%
      select(input$variable) %>%
      summary()
  })
  
  output$table <- renderTable(sum())
}




#################################################################
shinyApp(ui, server)

每当我运行这个应用程序时,它都会生成以下代码:

基本上,我想创建一个非常简单的汇总表,其中数值变量的列名看起来就像Min、Q1、Median、Mean、Q3、Max

也许只有一个简单的表,其中分类变量的列名为Yes和No。

我也尝试过使用summaries ()函数来手动创建我的摘要,但这也给我带来了问题。

现在,实际的统计数据本身对我来说不一定很重要,因为我只想首先纠正表的错误。有谁能帮我修一下桌子吗?

EN

回答 1

Stack Overflow用户

发布于 2020-12-15 07:50:37

您可以使用package tidyr中的separatepivot_wider函数来隔离指标名称和值,然后按列移动指标:

代码语言:javascript
复制
data <- data %>%
  select(input$variable) %>%
  summary() %>%
  as.data.frame() %>%
  tidyr::separate(Freq, c("Stat", "Value"), sep=":") %>%
  tidyr::pivot_wider(names_from =Stat, values_from = Value)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65297994

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档