R 如何在下拉菜单中填充shiny app内子目录的csv文件。?

R 如何在下拉菜单中填充shiny app内子目录的csv文件。?,r,csv,shiny,R,Csv,Shiny,可能的重复项 我有一个小的闪亮的应用程序,为用户提供了一些下拉选项。我在Shining app中创建了一个子目录,即data,其中包含csv文件,并显示在下拉菜单中。我使用了下面的代码,但无法访问data子目录中的文件 在ui.r上: filenames <- list.files(pattern="\\.csv") selectInput(inputId="dataset",label= "Choose platform annotation file",filenam

可能的重复项

我有一个小的闪亮的应用程序,为用户提供了一些下拉选项。我在Shining app中创建了一个子目录,即
data
,其中包含csv文件,并显示在下拉菜单中。我使用了下面的代码,但无法访问
data
子目录中的文件

在ui.r上:

    filenames <- list.files(pattern="\\.csv") 
   selectInput(inputId="dataset",label= "Choose platform annotation file",filenames)
我也试过这个

    filenames <- list.files(pattern="\\.csv$data") ## data is my folder inside shiny app.

调用
list.files
时,需要指定要列出其文件的路径,默认路径为当前目录,即包含
ui.R
server.R
文件的目录

尝试:


另外,查看您的输入文件示例,您有许多带有逗号的
基因标题,如果您的
csv
文件中的分隔符是逗号,这可能会导致问题。

谢谢,这很有效。那么上述问题中的其他问题呢?我真的不知道你的意思,或者问题是什么。加载数据后,
dataInput()
会为我返回数据帧。有什么问题吗?也许发布几行数据也会有所帮助。在这里,它还会返回数据框。请查看
inputdata
部分中的上述代码,我需要数据进行进一步处理,但我无法做到这一点。我可能错过了我想的东西,我不确定。需要再次查看代码。好的,您是否也可以发布几行您的
csv
文件,以查看它的外观,以及
inputdata
中的代码是否运行良好?
inputdata <- reactive({ 

    df1 <- data.frame()
    df1 <- dataInput()
    if (is.null(df1))
      return(NULL)
    df1[] <- lapply(df1, as.character)
    df1 <- df1[df1[,3]!='',]
    df1 <- df1[!grepl('[/]', df1$Gene.Title),]
  }) 
    filenames <- list.files(pattern="\\.csv$data") ## data is my folder inside shiny app.
ID                        Gene Title                      Gene Symbol
1007_s_at   discoidin domain receptor tyrosine kinase 1    DDR1
1053_at     replication factor C (activator 1) 2, 40kDa    7-Mar
117_at      heat shock 70kDa protein 6 (HSP70B')           HSPA6
121_at      paired box 8                                   PAX8
1255_g_at   guanylate cyclase activator 1A (retina)        GUCA1A
1294_at     ubiquitin-like modifier activating enzyme 7    UBA7 
1320_at     protein tyrosine phosphatase, non-receptor     PTPN21
1405_i_at   chemokine (C-C motif) ligand 5                 CCL5/CCL6
1431_at      
1438_at     EPH receptor B3                                EPHB3
1487_at     estrogen-related receptor alpha                ESRRA
1494_f_at   cytochrome P450, family 2                      CYP2A6/CYP2
filenames <- list.files(path="data",pattern="\\.csv")
clean_data <- reactive({ 
        #get the data 
        df1 <- dataInput()

        if (is.null(df1))
                return(NULL)
        df1[] <- lapply(df1, as.character)

        #looks for lines that have only zero or more blanks or a slash in column 3 and removes them
        df1 <- df1[!grepl("$ *^|/",df1[,3]),]
        df1
}) 

#do what you want with the data, for expample render it as another table
 output$annotation <- renderDataTable({
            withProgress(message = 'Loading Data . . .', {
                  clean_data()

            })
    })