首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何解决snakemake中"IndexError: list index out range“的问题

如何解决snakemake中"IndexError: list index out range“的问题
EN

Stack Overflow用户
提问于 2019-05-17 08:02:23
回答 1查看 892关注 0票数 3

我第一次设置了一个新的snakemake管道,但遇到了代码问题。

我一开始就试着让它变得非常简单。

代码语言:javascript
复制
configfile: "config.yaml"
SAMPLES, = glob_wildcards("data/{sample}_L008_R1_001.fastq.gz")

rule all:
    input:
        expand("umi_labeled_fastq/{sample}.umi-extract.fq.gz", sample=SAMPLES)
rule umi_tools_extract:
    input:
        "data/{sample}_L008_R1_001.fastq.gz"
    output:
        "umi_labeled_fastq/{sample}.umi-extract.fq.gz"
    shell:
        "umi_tools extract --extract-method=regex --bc-pattern=”(?P<umi_1>.{6})(?P<discard_1>.{4}).*” -I {input} -S {output}"

下面是我收到的输出:

代码语言:javascript
复制
Job counts:
    count   jobs
    1   all
    6   umi_tools_extract
    7

[Thu May 16 16:55:05 2019]
rule umi_tools_extract:
    input: data/YL5_S221_L008_R1_001.fastq.gz
    output: umi_labeled_fastq/YL5_S221.umi-extract.fq.gz
    jobid: 3
    wildcards: sample=YL5_S221

RuleException in line 9 of /home/ryan/lexogen/test2.snakefile:
IndexError: list index out of range

如果我从正则表达式模式中删除这一部分,则不会出现错误:

--bc-pattern=”(?P<umi_1>.{6})(?P<discard_1>.{4}).*”

那么我就不会得到任何错误。我该如何解决这个问题呢?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-17 08:31:13

doubling the brackets的外壳命令中,您需要转义{4}{6}的大括号。Snakemake认为它们是某种类型的变量,而它们不是,因此是错误的。

代码语言:javascript
复制
shell:
    "umi_tools extract --extract-method=regex --bc-pattern=”(?P<umi_1>.{{6}})(?P<discard_1>.{{4}}).*” -I {input} -S {output}"
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56177987

复制
相关文章

相似问题

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