首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >合并snakemake中的vcf文件

合并snakemake中的vcf文件
EN

Stack Overflow用户
提问于 2020-10-21 13:51:38
回答 1查看 121关注 0票数 0

在运行变量调用之后,我只想合并特定的输出,如d所示。这给了我一个error of missing input files。如何解决这个问题?

代码语言:javascript
复制
d = {"bob": ["bob:0-10.view.filtered.vcf", "bob:10-20.view.filtered.vcf"]
     "ann": ["ann:0-20.view.filtered.vcf", "ann:20-30.view.filtered.vcf"]}

rule varcall:
    input:
        ref="reference.fasta",
        bam="bam_list"
    output:
        outf ="var/{chr}.view.filtered.vcf"
    shell:
        """
        freebayes -r {wildcards.chr} -f {input.ref} --bam-list {input.bam} -v {output.outf}
        """

wildcard_constraints:
    chromosome = "|".join(chromosomes)

rule merge:
    input:
        lambda w: d[w.chromosome]
    output:
        outf = "merged/{chromosome}.vcf"
    params:
        lambda w: "I=" + " I=".join(d[w.chromosome])
    shell:
        "java -jar picard.jar GatherVcfs {params[0]} O={output.outf}"
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-10-21 15:30:22

varcall的输出是

代码语言:javascript
复制
outf ="var/{chr}.view.filtered.vcf"

因此,字典d应该包括目录var

代码语言:javascript
复制
d = {"bob": ["var/bob:0-10.view.filtered.vcf", "var/bob:10-20.view.filtered.vcf"]
     "ann": ["var/ann:0-20.view.filtered.vcf", "var/ann:20-30.view.filtered.vcf"]}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64465062

复制
相关文章

相似问题

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