将reactiveValue存储到数据框

时间:2018-04-12 14:10:47

标签: r shiny

我有这个应用程序从现有数据中过滤names并打印出selection

它的想法是用户可以在selection上运行脚本(在本例中为名称)并返回分析页面,包含图形和其他值。

我有两个问题:

已解决 - 1.如何将reactiveValue存储到DF

我发现如果我使用

selection <<- values$df

而不是

selection <- values$df

它会成功。但是我仍然需要处理其他事情。

2。调用将创建分析的R脚本

让我说我有"function.r"返回一个页面,其中包含一些关于数据的摘要,如图表等等......如何将整个页面重新加载到分析中?

我已尝试拨打source("function.r")这样做但不会重定向。

我希望我能提前做好准备并提前感谢,因为我很匆忙! =)

CODE

library(data.table)
library(shiny)

names <- c("Adam", "Smith", "Frank")
id <- c(1234, 4321, 1111)
data <- data.table(names, id)
rm(names, id)

ui <- fluidPage(      
  fluidRow(
    column(8, 
           h2("Create Analyses"),
           selectInput(inputId = "names", label = "Search names", 
                       choices = data$names, multiple = TRUE),
           actionButton("add","Add"))
  ),
  fluidRow(
    column(12, 
           h2("Analyses"),
           dataTableOutput("tabela"),
           actionButton("genanalyses","Generate Analyses"))
  )

)

server <- function(input, output, session) {

  values <- reactiveValues()
  values$df <- df
  observeEvent(input$add, {
    values$df <- data[names %in% input$names]
selection <<- values$df
  })

  output$tabela <- renderDataTable({return(values$df)})

  observeEvent(input$genanalyses, {
    source("function.r")
  })
}


shinyApp(ui, server)

0 个答案:

没有答案