首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Snakemake中没有明显原因的通配符SyntaxError

Snakemake中没有明显原因的通配符SyntaxError
EN

Stack Overflow用户
提问于 2019-09-10 03:08:41
回答 1查看 302关注 0票数 1

我一直收到关于输出规则中不具有相同通配符的错误,并且我不知道错误的来源是什么:

代码语言:javascript
复制
SyntaxError:
Not all output, log and benchmark files of rule bcftools_filter contain the same wildcards. This is crucial though, in order to avoid that two or more jobs write to the same file.

...

rule merge_YRI_GTEx:
    input:
        kg=expand("kg_vcf/1kg_yri_chr{q}.vcf.gz", q=range(1,23)),
        gtex=expand("gtex_vcf/gtex_chr{v}.snps.recode.vcf.gz", v=range(1, 23))
    output:
        "merged/merged_chr{i}.vcf.gz"
    shell:
        "bcftools merge \
            -0 \
            -O z \
            -o {output} \
            {input.kg} \
            {input.gtex}"


rule bcftools_filter:
    input:
        expand("merged/merged_chr{i}.vcf.gz", i=range(1,23))
    output:
        filt="filtered_vcf/merged_filtered_chr{i}.vcf.gz",
        chk=touch(".bcftools_filter.chkpnt")
    threads:
        4
    shell:
        "bcftools filter \
            --include 'AN=1890 && AC > 0' \
            --threads {threads} \
            -O z \
            -o {output.filt} \
            {input}"
...
rule list_merged_filtered_vcfs:
    input:
        ".bcftools_filter.chkpnt"
    output:
        "processed_vcf_list.txt"
    shell:
        "for i in {{1..22}}; do \ "
        "echo \"{config[sprime_dir]}/filtered_vcf/merged_filtered_chr${{i}}.vcf.gz\" >> \
        {output}; done"

它抱怨的具体代码行是"bcftools filter \,这对我来说更令人费解。我试着给输入的通配符命名,甚至仔细检查了调用bcftools_filteroutput的规则以及生成bcftools_filterinput的规则,但都无济于事,不知道是什么导致了这个错误。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-09-10 15:32:29

我认为错误来自不包含通配符{i}chk=touch(".bcftools_filter.chkpnt")

除此之外,我不确定你的规则是不是很明智。您正在向bcftools filter传递一个输入文件列表(来自expand(...)),但我认为bcftools filter不会接受多个输入文件。此外,您的规则将使用相同的输入文件列表创建输出文件filtered_vcf/merged_filtered_chr{i}.vcf.gz (i的每个值对应一个)。你确定你想要expand("merged/merged_chr{i}.vcf.gz", i=range(1,23))而不只是"merged/merged_chr{i}.vcf.gz",并给出上游的值吗?

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57859893

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档