__author__ = "Pierre-Edouard Guerin" __license__ = "MIT" ## Demultiplexing rule demultiplexing: output: '../results/03_demultiplexing/01_demultiplexed/{demultiplex}.fastq' singularity: config["singularity"]["ednatools"] conda: '../envs/env_cutadapt.yaml' threads: 1 params: dmulti= lambda wildcards: dfMulti[dfMulti.demultiplex == wildcards.demultiplex].to_dict('records')[0], maxLen=config["demultiplexing"]["maxLen"], minLen=config["demultiplexing"]["minLen"] log: '../logs/03_demultiplexing/01_demultiplexed/{demultiplex}.log' shell: ''' mkdir -p ../results/03_demultiplexing/01_demultiplexed/{params.dmulti[projet]}/{params.dmulti[marker]} cat ../results/02_assembly/{params.dmulti[run]}.fastq ../results/02_assembly/{params.dmulti[run]}_rev.fastq 2> {log} | \ cutadapt --discard-untrimmed -m {params.minLen} -g {params.dmulti[barcode5]} -O {params.dmulti[lenBarcode5]} - 2>> {log} | \ cutadapt --discard-untrimmed -m {params.minLen} -g ^{params.dmulti[primer5]} -O {params.dmulti[min_f]} - 2>> {log} | \ cutadapt --discard-untrimmed -m {params.minLen} -a {params.dmulti[barcode3]} -O {params.dmulti[lenBarcode3]} - 2>> {log} | \ cutadapt --discard-untrimmed -m {params.minLen} -a {params.dmulti[primer3]}$ -O {params.dmulti[min_r]} - 2>> {log} | \ cutadapt -M {params.maxLen} - 2>> {log} > {output} '''