Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/70.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 如何在反应性中引用数据集变量_R_Shiny_Reactive Programming - Fatal编程技术网

R 如何在反应性中引用数据集变量

R 如何在反应性中引用数据集变量,r,shiny,reactive-programming,R,Shiny,Reactive Programming,我正在制作一个闪亮的应用程序。我使用反应性编程来实现更好的功能。但我不知道如何引用作为反应对象的数据集。以下是一个例子: buffer_bank <- reactive({mydata <- merge(buffer_data(), rwa())%>% mutate(buff = case_when(REGN %in% (szko$REGN) ~ (buffer + buffer_szko), TRUE ~ buffer))%>%

我正在制作一个闪亮的应用程序。我使用反应性编程来实现更好的功能。但我不知道如何引用作为反应对象的数据集。以下是一个例子:

buffer_bank <- reactive({mydata <-
        merge(buffer_data(), rwa())%>%
        mutate(buff = case_when(REGN %in% (szko$REGN) ~ (buffer + buffer_szko), TRUE ~ buffer))%>%
        select(REGN, buff)
    mydata})
buffer\u bank%
选择(REGN,buff)
mydata})
其中,
buffer_data()
rwa()
是被动对象,这就是我在这两种情况下在数据集之后传递
()
的原因。但是如何在
szko
数据集中引用
REGN
变量,这也是被动对象

我如何处理这个问题


非常感谢。

这应该可以。通常,我会在
renderable
内执行一个普通赋值,例如
df我已经解决了我的问题。解决方案是将
()
放入
szko()$REGN
语句中。谢谢大家。

请看@A.Suliman。我已经阅读了这篇文章,但不幸的是,我不知道如何解决这个问题。@DavidBijoyan,有可能生成一个完整的可重复的示例吗?你的
szko
被动陈述是什么样子的?
szko()$REGN
给你什么?
library(shiny)
shinyApp(
  ui = fluidPage(
    selectInput("variable", "Variable:",
                c("4" = "4",
                  "6" = "6",
                  "8" = "8")),
    tableOutput("data")
  ),
  server = function(input, output) {
    dat <- reactive({
      list(mt=mtcars)
    })

    output$data <- renderTable({
      #browser()
      dat()$mt[dat()$mt$cyl %in% input$variable, ]
      #2nd option given that you defined reactive using dat <- reactive({mtcars})
      #df <- dat()
      #df[df$cyl %in% input$variable, ]
    }, rownames = TRUE)
  }
)