使用闪亮的 submitButton 重建数据框
Rebuild dataframe using submitButton in shiny
我有一个经过一些处理后获得的数据框。在此数据框中,用户需要选择用户希望继续进行进一步处理的某些标准。为此,有一个添加按钮,当用户单击该按钮时,将根据所选标准取出数据并附加到新的数据框中。这个新帧然后继续进行进一步处理。我似乎坚持的是,当按下添加按钮时,我无法将数据框闪亮地添加到另一个数据框。我提供了下面的代码。任何帮助将不胜感激。
ui.R
library(shiny)
shinyUI(pageWithSidebar(
headerPanel('Testing'),
sidebarPanel(
conditionalPanel(
condition="input.tabs1=='Observe Data'",
uiOutput("item"),
actionButton("add", "Add"))
),
mainPanel(
tabsetPanel(id ="tabs1",
tabPanel("Observe Data",verbatimTextOutput("Data_table")),
tabPanel("Final Table",verbatimTextOutput(outputId='plot'))
)
)
))
server.R
library(shiny)
library(dplyr)
chosen_category<-data.frame()
shinyServer(function(input, output) {
data<-data.frame(Names=c("A","A","A","B","B","B","C","C","A"),Values=c(1,2,3,4,5,654,3,2,2))
output$item<-renderUI({
selectInput("category","Categories",as.character(unique(data$Names)))
})
filtdata<-reactive({
p<-data
p_filt<-data%>%
filter(Names %in% input$category)
p_filt
})
output$Data_table<-renderPrint({
filtdata()
})
observe({
input$add
chosen_category <<- rbind(chosen_category, filtdata())
})
final_data <- reactive({
chosen_category
})
})
如果您想在 Final Data
选项卡中打印最终数据框,您可以在 renderPrint
而不是 observe
中添加对操作按钮的依赖。我删除了 observe
和 final_data
表达式并将其添加到您的 server.R
:
output$plot<-renderPrint({
input$add
chosen_category <<- rbind(chosen_category, filtdata())
chosen_category
})
这会在 ui.R
的最后一个选项卡中打印最终数据框。
我有一个经过一些处理后获得的数据框。在此数据框中,用户需要选择用户希望继续进行进一步处理的某些标准。为此,有一个添加按钮,当用户单击该按钮时,将根据所选标准取出数据并附加到新的数据框中。这个新帧然后继续进行进一步处理。我似乎坚持的是,当按下添加按钮时,我无法将数据框闪亮地添加到另一个数据框。我提供了下面的代码。任何帮助将不胜感激。
ui.R
library(shiny)
shinyUI(pageWithSidebar(
headerPanel('Testing'),
sidebarPanel(
conditionalPanel(
condition="input.tabs1=='Observe Data'",
uiOutput("item"),
actionButton("add", "Add"))
),
mainPanel(
tabsetPanel(id ="tabs1",
tabPanel("Observe Data",verbatimTextOutput("Data_table")),
tabPanel("Final Table",verbatimTextOutput(outputId='plot'))
)
)
))
server.R
library(shiny)
library(dplyr)
chosen_category<-data.frame()
shinyServer(function(input, output) {
data<-data.frame(Names=c("A","A","A","B","B","B","C","C","A"),Values=c(1,2,3,4,5,654,3,2,2))
output$item<-renderUI({
selectInput("category","Categories",as.character(unique(data$Names)))
})
filtdata<-reactive({
p<-data
p_filt<-data%>%
filter(Names %in% input$category)
p_filt
})
output$Data_table<-renderPrint({
filtdata()
})
observe({
input$add
chosen_category <<- rbind(chosen_category, filtdata())
})
final_data <- reactive({
chosen_category
})
})
如果您想在 Final Data
选项卡中打印最终数据框,您可以在 renderPrint
而不是 observe
中添加对操作按钮的依赖。我删除了 observe
和 final_data
表达式并将其添加到您的 server.R
:
output$plot<-renderPrint({
input$add
chosen_category <<- rbind(chosen_category, filtdata())
chosen_category
})
这会在 ui.R
的最后一个选项卡中打印最终数据框。