在SHINY中,我们如何将用户输入从一些文本和数字框转移到CSV文件中?
流程将是:
- First the users input the information into those text boxes.
- Then the users press a Run button
- Upon pressing the button, a CSV file will be generated containing the information from those text boxes
答案 0 :(得分:1)
您可以将数据存储为反应式表达式中的数据框,并使用下载按钮和下载处理程序下载数据。
server.R
library(shiny)
shinyServer(function(input, output, session) {
dataReactive <- reactive({
data.frame(text = c(input$text1, input$text2, input$text3))
})
output$exampleTable <- DT::renderDataTable({
dataReactive()
})
output$downloadData <- downloadHandler(
filename = function() {
paste("dataset-", Sys.Date(), ".csv", sep="")
},
content = function(file) {
write.csv(dataReactive(), file)
})
})
ui.R:
shinyUI(fluidPage(
sidebarLayout(
sidebarPanel(
textInput("text1","Text 1:",value="example text 1"),
textInput("text2","Text 2:",value="example text 2"),
textInput("text3","Text 3:",value="example text 3"),
downloadButton('downloadData', 'Download data')
),
mainPanel(
DT::dataTableOutput("exampleTable")
)
)
))
希望这有帮助!