在Snakemake参数部分使用特殊符号



我创建了以下蛇制造规则:

rule cutadapt:
input:
input
output:
output
log:
logs
params:
"-a 'A{100}' --nextseq-trim=20 -m 20"
wrapper:
"0.50.4/bio/cutadapt/se"

然后我得到以下错误消息:

参数中的通配符无法从输出文件中确定。

由于{},Snakemake将-a 'A{100}'实现为通配符。我试图通过-a 'A{{100}}'对{}进行转义,但它产生了相同的错误。

是否有机会逃脱蛇制造规则中的参数部分?

感谢

看起来修复有点难看(请参阅问题https://bitbucket.org/snakemake/snakemake/issues/584/unable-to-escape-curly-braces-in-params)-我不知道是否已经实施了更好的解决方案。

基本上,使用一个伪lambda函数:

lambda wc: "-a 'A{100}' --nextseq-trim=20 -m 20"

Snakemake使用Python格式,因此您可以用另一个大括号转义大括号:

"-a 'A{{100}}' --nextseq-trim=20 -m 20"

相关内容

  • 没有找到相关文章