我创建了以下蛇制造规则:
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"