如何解决Snakemake 创建通配符
我有一个如下所示的输入文件。当我创建通配符时,我收到一个错误,提示找不到文件,因为它们具有特定组合。
bob_78/clip/bob_78.hjckl87.dup.srt.bam
bob_79/clip/bob_79.hjckl87.dup.srt.bam
bob_80/clip/bob_80.hjpolxf.dup.srt.bam
bob_81/clip/bob_81.hjpolxf.dup.srt.bam
bob_82/clip/bob_82.hgfhj29.dup.srt.bam
如何为这些文件创建通配符?
SAMPLE=["bob_78","bob_79","bob_80","bob_81","bob_82"]
PREFIX=["hjckl87","hjpolxf","hgfhj29"]
rule all:
expand("OUTDIR/{sample}.{prefix}.clipped.txt",sample=SAMPLES,prefix=PREFIX)
rule xxx:
input:
ins="{sample}/clip/{sample}.{prefix}.dup.srt.bam"
output:
outfile="OUTDIR/{sample}.{prefix}.clipped.txt"
shell:
"""
some code
"""
解决方法
您可以zip
两个列表,但正如@Maarten-vd-Sande 所说,列表必须匹配:
SAMPLE=["bob_78","bob_79","bob_80","bob_81","bob_82"]
PREFIX=["hjckl87","hjckl87","hjpolxf","hgfhj29"]
rule all:
expand("OUTDIR/{sample}.{prefix}.clipped.txt",zip,sample=SAMPLES,prefix=PREFIX)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。