2015-10-05 116 views
1

我正在尝试在R/shiny中构建一个探索性分析报告系统,并找到交互式文档功能特别有吸引力。不幸的是,交互式文档模板似乎要求您已经知道输入数据的性质。我希望能够做的是有一个配置文件,我修改了单个报告,但只留下实际的报告Rmarkdown脚本。这是我目前有:R/shiny中的交互式文档中的动态元素?

parameters.R:

file_directory <- "/ngsdata/intern/projects/Exomes/vcfs/" 
files <- c( 
    "s38499.toprocess.tsv", 
    "s38626.toprocess.tsv", 
    "s38600.toprocess.tsv" 
) 
files <- paste0(file_directory,files) 
sampleNames <- c("38499","38626","38600") 

我RMD文件:

checkBoxList <- paste("checkbox",sampleNames,sep="_") 

for (i in 1:length(sampleNames)) { 
    checkboxInput(checkBoxList[i], label = sampleNames[i], value=TRUE) 
} 
checkboxInput("38499", label = "my label", value=TRUE) 

在for循环中会显示复选框都没有,当我点击 “运行文档”在Rstudio中,但最后一个(“我的标签”)显示。

有关如何将复选框的数量基于参数.R文件的内容而不是修改Rmd文件的任何提示?

回答

1

一些周围挖掘后,我发现我的解决方案:

mylist <- as.list(1:length(sampleNames)) 
names(mylist) <- sampleNames 
checkboxGroupInput("mygroup",label=h3("samples"),choices=mylist,selected=1:length(sampleNames))