使用snakemake运行metabat2,但未获取bin文件

问题描述 投票:0回答:1

我一直在尝试使用snakemake运行metabat2。我可以运行它,但是metabat2 /中的输出文件丢失了。在工作后的checkM确实会使用数据并且可以工作,我稍后无法找到文件。应该使用数字创建文件,但是无法预测将创建多少个文件。我可以指定一种方法来确保在该文件中创建文件吗?

rule all:
    [f"metabat2/" for sample in samples],
    [f"checkm/" for sample in samples]
rule metabat2:
    input:
        "input/consensus.fasta"
    output:
        directory("metabat2/")
    conda:
        "envs/metabat2.yaml"
    shell:
        "metabat2 -i {input} -o {output} -v"

rule checkM:
    input:
        "metabat2/"
    output:
        c = "bacteria/CheckM.txt",
    d = directory("checkm/")
    conda:
        "envs/metabat2.yaml"
    shell:
        "checkm lineage_wf -f {output.c} -t 10 -x fa {input} {output.d}"

运行metabat2的正常代码是

 metabat2 -i path/to/consensus.fasta -o /outputdir/bin -v 

这将在具有bin。[number] .fa]的outputdir文件中创建>

我一直在尝试使用snakemake运行metabat2。我可以运行它,但是metabat2 /中的输出文件丢失了。在使用数据后可以工作的checkM可以正常工作,我只是找不到文件...

snakemake
1个回答
1
投票

我不知道是什么问题,但是我有几点建议...

© www.soinside.com 2019 - 2024. All rights reserved.