2016-11-21 2 views
0

Я создаю список входных данных для выбора пользователя, используя selectInput(....multiple=TRUE), где пользователь может выбрать несколько параметров, но я не могу проверить/прочитать, какие параметры пользователь выбирает на моем сервере.Проверить наличие нескольких вариантов на сервере Shiny

Если кто-то успешно пробовал, вы можете поделиться им?

Например - Для каталога, который folowing файл -

/User/DE/AvsB.de.txt- 

Feature.ID Read.Count.All Read.Count.A Read.Count.B FC 
ENSG00000121898 3367.375403 6734.750807 0 0 
ENSG00000104435 2161.235573 4322.471145 0 0 
ENSG00000229847 2111.660196 4223.320392 0 0 
ENSG00000046889 1302.993351 2605.986702 0 0 

/User/DE/CvsD.de.txt -

Feature.ID Read.Count.All Read.Count.C Read.Count.D FC 
ENSG00000248329 373.0309339 746.0618679 0 0 
ENSG00000144115 352.3786793 704.7573586 0 0 
ENSG00000158528 351.6252529 703.2505057 0 0 
ENSG00000189058 350.5375828 701.0751656 0 0 


library(gtools) 
D_files <- list.files(path = "/User/DE/",pattern = "*.de.txt" ,recursive = F, full.names = T) 
D_filename <- vector() 
for(i in 1:length(D_files)){ 
    D_filename[i] <- D_files[i] 
} 
D_filename <- unlist(strapplyc(D_filename, "/User/DE/(.*).de.txt")) 
names(D_files)<- D_filename 


    ui <- fluidPage(

    mainPanel(

     uiOutput("Quad_plot_comparison"), 
     HTML("<br><br>"), 
     br() 
) 
) 

    server <- function(input, output) { 
    output$Quad_plot_comparison <- renderUI({ 
     selectInput(inputId = "vars",label = h3("Select comparison"), choices = mixedsort(D_files), multiple = T) 
    }) 
    } 

    shinyApp(ui, server) 

Мой код показывает имена файлов на входе коробка, но мне нужно сделать следующее

1- Select multiple file names from the box 
2- Read user input (variables in the input box) 
3- Read the files corresponding to these user input into a data frame 

Я даже не могу получить второй шаг t o работа, любая помощь будет работать! Спасибо!

+0

Это, безусловно, возможно, пожалуйста, напишите воспроизводимый пример – HubertL

+0

Привет @HubertL, спасибо! Я только что опубликовал свой код – AnkP

+0

Воспроизводимые средства. Мне не нужны ваши файлы для воспроизведения. Пожалуйста, создайте небольшой набор данных, чтобы я мог легко воспроизвести вашу проблему (я просто хочу скопировать-вставить-запустить в R, чтобы увидеть) – HubertL

ответ

0

Это небольшой пример того, как использовать множественный выбор в selectInput. Вы можете адаптировать его к вам сценарию, прочитав файл в reactive:

library(shiny) 
shinyApp(ui=fluidPage(selectInput("select", "choose", c(1,2,3), multiple = TRUE), 
         textOutput("selected", inline=TRUE)), 
     server=function(input, output){ 
         selected <- reactive(ifelse(is.null(input$select), "nothing", 
                paste(input$select, collapse=","))) 
         output$selected <- renderText(paste("Selected=",selected())) 
         }) 
Смежные вопросы