Я очень новичок в R блестящие коды.Я хочу создать приложение, которое позволило бы пользователям сохранять выборки и проект, который можно было бы использовать для дальнейшего использования.Например, допустим, я загрузил файл и выбрал ввод в пользовательском интерфейсе.Пользователи должны иметь возможность сохранить работу где-нибудь, чтобы завтра они могли снова открыть проект и продолжить работу.это приложение будет основано на настольных компьютерах, а не на сервере.Я попробовал вариант закладки, где все работает нормально, но проект в целом не может быть сохранен в настольном приложении.
Есть ли способ в Rshiny, где пользователи могут сохранить выборы как проект в своем каталоге и позже доступны?проект будет продолжать работать?
Любая помощь будет принята с благодарностью.
Как сохранить приведенное ниже приложение в качестве проекта и затем разрешить пользователям доступ к файлу .rds в среде?
library(shiny)
ui <- function(request){
fluidPage(
titlePanel("Put title of the application"),
sidebarLayout(
sidebarPanel(
radioButtons("sep", "File Separator: ",
choices = c(Comma = ",", Semicolon = ";", Tab = "\t"),selected = ","),
fileInput("file", "Select a file: ", multiple = FALSE,
accept = c("text/csv","text/comma-separated-values,text/plain",".csv")),
uiOutput("mytype")
,bookmarkButton()
),
mainPanel(
textOutput("mytext"),
textOutput("myrows")
)
)
)
}
server <- function(input, output, session) {
input_file <- reactive({
req(input$file)
read.csv(input$file$datapath,
header = TRUE,
sep = input$sep)
})
output$mytype <- renderUI({
selectInput("var1", "Select a type of drink: ", choices = levels(input_file()$Type))
})
onBookmark(function(state) {
state$values$var1 <- input$var1
})
onRestored(function(state){
updateSelectInput(session,"var1",selected=state$values$var1)
})
output$mytext <- renderText({paste("You have selected a Type of", tolower(input$var1))})
input_rows <- reactive({
data <- subset(input_file(), Type %in% input$var1)
nrow(data)
})
output$myrows <- renderText({paste("The selected type has", input_rows(), "rows")})
}
shinyApp(ui, server, enableBookmarking = "server")