【发布时间】:2021-03-10 19:44:39
【问题描述】:
我遇到了 Snakemake 的WildcardError: Wildcards in input files cannot be determined from output files 问题。问题是我不想保留输入文件名的可变部分。例如,假设我有这些文件。
$ mkdir input
$ touch input/a-foo.txt
$ touch input/b-wsdfg.txt
$ touch input/c-3523.txt
我有一个像这样的 Snakemake 文件:
subjects = ['a', 'b', 'c']
result_pattern = "output/{kind}.txt"
rule all:
input:
expand(result_pattern, kind=subjects)
rule step1:
input:
"input/{kind}-{fluff}.txt"
output:
"output/{kind}.txt"
shell:
"""
cp {input} {output}
"""
我希望输出文件名只有我感兴趣的部分。我理解输入中的每个通配符都需要输出中对应的通配符的原理。那么我正在尝试做一种反模式吗?例如,我想可能有两个文件input/a-foo.txt 和input/a-bar.txt,它们会相互覆盖。我应该在输入蛇形之前重命名我的输入文件吗?
【问题讨论】:
标签: snakemake