Как упомянул Кент в комментарии, это очень возможно. Ниже приведено простое приложение, которое позволит вам умножить все поля в mtcars
на произвольное число и загрузить файл:
library(shiny)
ui <- fluidPage(
numericInput("val", "Value", 1),
downloadButton("file", "Download")
)
server <- function(input, output, sesssion) {
tbl <- reactive(mtcars * input$val)
output$file <- downloadHandler(
filename = "example.csv",
content = function(x) {
write.csv(tbl(), x)
}
)
}
shinyApp(ui = ui, server = server)