作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试使用snakemake运行prokka并统治所有。在后者中,我定义了 prokka 将生成的所有输出文件夹以写入结果。 Prokka 需要提供一个文件夹作为输出而不是文件。
我所拥有的简化版本在这里:
PATIENTID_ls = range(2)
rule all:
input:
expand("results_{subjectID}_outputfolder",subjectID=PATIENTID_ls),
rule prokka:
input:
"contigs/subject_{subjectID}/contigs.fasta",
output:
"results/subject_{subjectID}_outputfolder",
shell:
"prokka --cpus 1 --proteins ../GCF_000009645.1_ASM964v1_genomic.gbff --outdir {output} --prefix contigs500_anno9ref {input} "
$snakemake -p
Building DAG of jobs...
MissingInputException in line 2 of Snakefile:
Missing input files for rule all:
results_1_outputfolder
results_0_outputfolder
snakemake -p results/subject_1_outputfolder
最佳答案
您的示例有一些问题,因为您的 rule all
输出文件与您的 rule prokka
不匹配输出文件。
但是,实现您想要做的事情的一种方法是使用 params
指定输出目录并将其用作标志 --outdir {params.outdir}
的参数.
一个类似的例子如下所示:
PATIENTID_ls = [1,2]
PREFIX = "contigs500_anno9ref"
rule all:
input:
expand("results_{subjectID}_outputfolder/{prefix}.gff",subjectID=PATIENTID_ls, prefix=PREFIX),
rule prokka:
input:
"contigs/contigs.fasta",
params:
outdir= "results_{subjectID}_outputfolder",
prefix= PREFIX,
output:
"results_{subjectID}_outputfolder/{prefix}.gff",
shell:
"echo '{params.prefix}' > {params.outdir}/{PREFIX}.gff"
rule prokka
中指定一个文件作为输出并在
rule all
.基于 prokka 上的示例
repo输出文件本质上是
{outdir}/{prefix}.gff
.您可以将其指定为
rule all
的输出和
rule prokka
在调用命令时从未直接使用它。
PATIENTID_ls = [1,2]
rule all:
input:
expand("results_{subjectID}_outputfolder/mockfile.txt",subjectID=PATIENTID_ls),
rule prokka:
input:
"contigs/contigs.fasta",
params:
outdir= "results_{subjectID}_outputfolder",
prefix= "contigs500_anno9ref",
output:
"results_{subjectID}_outputfolder/mockfile.txt",
shell:
"echo '{params.prefix}' && touch {params.outdir}/mockfile.txt"
关于蛇形定义文件夹作为输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53749519/
在 Snakemake 文档中, includes directive可以将另一个工作流程的所有规则合并到主工作流程中,并且显然可以显示在 snakemake --dag -n | dot -Tsvg
在 Snakemake 文档中, includes directive可以将另一个工作流程的所有规则合并到主工作流程中,并且显然可以显示在 snakemake --dag -n | dot -Tsvg
我们遵循将模型属性命名为 snake_case_variables 的 Laravel 标准。尽管 Laravel 只是我们系统中与 Javascript 前端和许多其他应用程序对话的 API 层。
当前情况:我想检测图像中的矩形(或正方形),这些矩形的轮廓并不完全一致。就像棋盘,外轮廓有整体。 可能的解决方案:我正在尝试实现主动轮廓算法,它应该可以帮助我检测物体的外部轮廓。我知道物体外面的一些点
我是一名优秀的程序员,十分优秀!