3

bcl2fastq を実行して、bcl 形式から fastq ファイルを生成したいと考えています。

シーケンス モードに関するシーケンス設定と使用されたインデックスの数に応じて、read1、read2、index1 または read1、read2、index1、index2 などを生成できます。

私がやりたいことは、読み取り出力番号情報を次のように config.yaml ファイルに入れることです。

readids: ['I1','I2','R1','R2']

生成する必要がある読み取り出力 (fastq.gz ファイル) の数をルールに自動的に判断させます。

それを達成するために出力セクションをどのように書くのですか?

以下は私が持っているもので、このルールから毎回1つのファイルしか出力できません。したがって、実際には、このルールを I1、I2、R1、および R2 に対してそれぞれ 4 回実行しますが、これは私が望んでいるものではありません。45行目で修正するには?45 行目で、{readid}の 1 つであると想定されていますI1,I2,R1,R2

 39 rule bcl2fastq:                                                                                                                                                 
 40     input:
 41         "/data/MiniSeq/test"
 42     params:
 43         prefix="0_fastq"
 44     output:
 45         "0_fastq/{runid}_S0_L001_{readid}_001.fastq.gz"
 46     log:
 47         "0_fastq/bcl2fastq_log.txt"
 48     shell:
 49         """
 50         bcl2fastq -R {input} -o {params.prefix} --create-fastq-for-index-reads --barcode-mismatches 1 --use-bases-mask {config[bcl2mask]} --minimum-trimmed
    -read-length 1 --mask-short-adapter-reads 1 --no-bgzf-compression &> {log}
 52        
 53         """
4

1 に答える 1