我想知道,当输入文件的命名稍有不同时,是否有一种方法来定义通配符。在本例中,FASTQ文件有不同的后缀--有些以“_L001_R1_001.fastq.gz”结尾,另一些以“R1_001快速q.gz”结尾。我希望使用glob_wildcards来读取运行名和示例名。在glob_wildcards中有使用“或”的好方法吗?任何建议都会很棒,谢谢!
# Define samples:
RUNS, SAMPLES = glob_wildcards(config['fastq_dir'] + "{run}/{samp}" + config['fastq1_suffix'])我的配置文件包含以下内容:
fastq_dir:
'~/tb/data/'
fastq1_suffix:
'_L001_R1_001.fastq.gz'
fastq2_suffix:
'_L001_R2_001.fastq.gz'第一条规则:
rule trim_reads:
input:
p1= config['fastq_dir'] + '{run}/{samp}' + config['fastq1_suffix'],
p2= config['fastq_dir'] + '{run}/{samp}' + config['fastq2_suffix']发布于 2022-01-12 14:18:07
一种方法是创建一个新的通配符,如下所示:
RUNS, SAMPLES, SFX = glob_wildcards("dir/{run}/{samp}_L001{suffix}.fastq.gz")根据工作流的不同,如果确实不需要SFX,则可以通过以下方式丢弃它:
RUNS, SAMPLES, _ = ...https://stackoverflow.com/questions/70659696
复制相似问题