首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Snakemake参数部分使用特殊符号

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

Stack Overflow用户
提问于 2020-04-13 18:21:44
回答 2查看 683关注 0票数 4

我创建了以下snakemake规则:

代码语言:javascript
复制
rule cutadapt:
    input:
        input
    output:
        output
    log:
        logs
    params:
        "-a 'A{100}' --nextseq-trim=20 -m 20"
    wrapper:
        "0.50.4/bio/cutadapt/se"

我得到以下错误消息:

不能从输出文件中确定params中的

通配符。

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

是否有机会在snakemake规则中转义参数部分?

谢谢

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-04-14 06:30:11

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

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

代码语言:javascript
复制
lambda wc: "-a 'A{100}' --nextseq-trim=20 -m 20"
票数 3
EN

Stack Overflow用户

发布于 2020-04-13 20:58:58

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

代码语言:javascript
复制
"-a 'A{{100}}' --nextseq-trim=20 -m 20"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61194156

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档