R闪亮滤镜没有适用于“ filter_”的适用于“功能”类对象的方法

时间:2020-10-23 17:17:57

标签: r shiny

我正在制作一个闪亮的应用,其uiserver函数如下所示:

ui <- fluidPage(
    
    # App title ----
    titlePanel("All Histograms!"),
    
    # Sidebar layout with input and output definitions ----
    sidebarLayout(
        
        # Sidebar panel for inputs ----
        sidebarPanel(
            selectInput(inputId = 'dataset', label = 'Choose a dataset:', 
                        choices = list.files(path = "#path here",
                                             full.names = FALSE,
                                             recursive = FALSE)),
           
            
        ),
        
        # Main panel for displaying outputs ----
        mainPanel(
            
            # Output: Histogram ----
            plotOutput(outputId = "distPlot")
            
        )
        
    ))  
server<- function( input, output, session){
    outputdf <- reactive({
        infile <- input$dataset
        if (is.null(infile)){
            return(NULL)
        }
        df<-read_feather(paste0("path_here",infile))
    })
    
    output$checkboxCompany <- renderUI({
        checkboxGroupInput(inputId = "company_selection", 
                           label="Company", 
                           choices = unique(outputdf()$Company)
        )
        })
    output$checkboxPredictedCondition <- renderUI({
        checkboxGroupInput(inputId = "predicted_condition_selection", 
                           label="Predicted Condition", 
                           choices = unique(outputdf()$Predicted.Condition)
        )
    })
    
    reactive_data <- reactive({
        df%>% 
            filter(Company %in% input$company_selection)%>%
            filter(Predicted.Condition %in% input$predicted_condition_selection)%>%
            pull(Predicted.Probability)
        
    })
    
    output$distPlot <- renderPlot({
        hist(reactive_data(), xlab = 'Predicted Probability', ylab = 'Frequency')
    })
}

用户应该能够使用selectInput从数据集列表中进行选择,然后基于该数据集,对两个checkboxcompanyPredict.Condition进行修改-例如一个数据集可能为a,b,c拥有选项company,而另一个数据集可能为a,c,d具有选项company

然后,根据所选的数据集和标记的结果复选框,我正在制作反应式直方图。

但是,当我运行该应用程序时,出现“没有适用于filter_的适用方法应用于类函数的对象”错误。我猜想R认为我在df中传递的reactive_data是一个函数吗?我在这里做错了什么?

1 个答案:

答案 0 :(得分:0)

原来我的reactive_data应该以{{1​​}}开头,而我的outputdf()缺少了uiuiOutputs Company

相关问题