如何在 R studio(闪亮的 App)中的 max() 函数中传递输入?

Posted

技术标签:

【中文标题】如何在 R studio(闪亮的 App)中的 max() 函数中传递输入?【英文标题】:How to pass an Input inside a max() function in R studio (shiny App)? 【发布时间】:2022-01-21 07:00:46 【问题描述】:

我正在尝试将输入 input$sel 传递给 max() 函数 max(dataf$get(input$sel)) 已知dataf 是具有值的数据框。

我的目标是通过选择输入 input$seldataf 的列中获取最大值。

server <- function(input, output, session) 
  #Summarize Data and then Plot 
  data <- reactive(
    req(input$sel)
    df <- dataf %>%  
      group_by(code) %>% 
      summarise(output = get(input$sel))
    print(df)
  )
  
  #Plot 
  output$plot <- renderPlot(  
    g <- ggplot(data(), aes(y = output, x = code) ) 
    g + geom_bar( stat = "sum")
    
  )


ui <- basicPage(
  
  selectInput(inputId = "sel",
              label = "eine möglichkeit auswählen",
             
               list("vaccinationsTotal","peopleFirstTotal","peopleFullTotal","peopleBoosterTotal")),
 
   plotOutput("plot")

######   here is my approuch   ##########

max(dataf$get(input$sel))


)

【问题讨论】:

【参考方案1】:

输入值仅在应用服务器内部可用。更准确地说,它们需要由观察/反应提供的反应上下文。

试试这个:

注意:我使用iris 数据集作为虚拟数据以使代码可重现。

library(shiny)
library(tidyverse)

ui <- basicPage(
  selectInput(
    inputId = "sel",
    label = "eine möglichkeit auswählen",
    choices = names(iris)
  ),
  # list("vaccinationsTotal","peopleFirstTotal","peopleFullTotal","peopleBoosterTotal")),

  plotOutput("plot")
)

server <- function(input, output, session) 
    # Summarize Data and then Plot
    data <- reactive(
        req(input$sel)
        df <- iris %>%
            group_by(Species) %>%
            summarise(output = max(get(input$sel)))
        print(df)
        df
    )
    
    
    
    # Plot
    output$plot <- renderPlot(
        g <- ggplot(data(), aes(y = output, x = Species))
        g + geom_bar(stat = "sum")
    )



shinyApp(ui, server)

【讨论】:

感谢您的有用回答。现在我正在尝试使用 textOutput(),我想知道在这种特定情况下应该如何使用它。 @lawkira 您可以查看textOutput documentation,如果您仍然需要帮助,您可以提出其他问题,我很乐意回答。

以上是关于如何在 R studio(闪亮的 App)中的 max() 函数中传递输入?的主要内容,如果未能解决你的问题,请参考以下文章

直接在默认浏览器中打开 Shiny App

我可以从闪亮的网站下载我闪亮的应用程序的 app.R 脚本和数据吗?

如何在 R Shiny App 中保留复选框中的值?

闪亮的 HTML 嵌入式 app.R 不接受高度属性 https://mytoybox.online

如何使 R 闪亮图形中的模式栏永久显示?

Rstudio 服务器在部署 APP 时遇到问题