R 简略统计

R 简略统计,r,shiny,summary,R,Shiny,Summary,我是Rshiny的新手,我需要帮助在Rshiny生成一些汇总统计数据 我的任务的目的是创建一个select输入,允许用户从6个变量中选择一个。在用户选择一个变量后,应该生成输出以显示汇总统计信息 这是我的密码: library(shiny) library(dplyr) library(ggplot2) library(markdown) library(gtsummary) ###########################################################

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

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

这是我的密码:

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

我还尝试使用Summary功能手动创建我的摘要,但这也会给我带来问题

现在,实际的统计数据本身对我来说并不重要,因为我只是想先把表格弄对。有人能帮我修复我的表吗?

您可以使用从包tidyr到sparate metric name和value的单独和pivot\u更广泛的函数,然后将metrics作为列移动:

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)

谢谢。它起作用了!实际上,对不起,它只适用于数值变量。你知道分类法吗?对于级别,只有一个选项:是的,如果将它们转换为因子,则不起作用使用mutate jaild=as.factor jaild在调用summary之前抱歉,jaild已设置为因子。不管怎样,我还是尝试了你的代码,但没有成功。不过,我想我在手机上找到了一个解决方案,但感谢所有的帮助!