Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Snakemake目录中缺少输入文件_Python_Snakemake - Fatal编程技术网

Python Snakemake目录中缺少输入文件

Python Snakemake目录中缺少输入文件,python,snakemake,Python,Snakemake,我正在尝试为管道编写脚本,但在从目录声明规则输入时遇到问题 我的代码包含以下部分: rule taco: input: all_gtf = GTF_DIR + "path_samplesGTF.txt" output: taco_out = TACO_DIR shell: "taco_run -v -p 20 -o {output.taco_out} \ --filter-m

我正在尝试为管道编写脚本,但在从目录声明规则输入时遇到问题

我的代码包含以下部分:

rule taco:
    input:
            all_gtf = GTF_DIR + "path_samplesGTF.txt"
    output:
            taco_out = TACO_DIR
    shell:
            "taco_run -v -p 20  -o {output.taco_out} \
            --filter-min-expr 1 --gtf-expr-attr RPKM {input.all_gtf}"

rule feelnc_filter:
    input:
           assembly = TACO_DIR + "assembly.gtf",
           annotation = GTF
    output:
           candidate_lncrna = FEELNC_FILTER + "candidate_lncrna.gtf"
    shell:
          "./FEELnc_filter.pl -i {input.assembly} -a {input.annotation} > {output.candidate_lncrna}"
这是我的错误:

/workdir/Snakefile的第97行中缺少输入异常:

缺少规则feelnc\u筛选器的输入文件:

谢谢大家!!
/workdir/pipeline-v01/TACO/assembly.gtf

您的脚本代码肯定小于97行,因此异常描述不是很有用。无论如何,MissingInputException意味着Snakemake已成功构建工作流DAG(这意味着您的
输入/输出和通配符没有问题),并开始执行此工作流。在某个点上,它试图执行该规则,而该规则的预期输出在该规则的shell脚本末尾不存在

现在我们有了第二个问题:您的脚本运行您自己的Perl脚本和未知的
taco_run
可执行文件:我不知道这些程序做什么。我猜
taco\u run
不会创建指定为
-o{output.taco\u out}
的目录


我建议您使用
--printshellcmds
键运行Snakemake。这将向您显示正在运行的确切命令,您可以尝试单独运行这些命令。检查这些命令是否真的创建了预期的输出。

谢谢您的帮助。Taco将创建一个目录作为输出(该目录可能以前没有创建过)。我会用钥匙把蛇弄出来看看能得到什么。