小编rda*_*vis的帖子

如何修复蛇中的“IndexError:列表索引超出范围”

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

\n\n

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

\n\n
\nconfigfile: "config.yaml"\nSAMPLES, = glob_wildcards("data/{sample}_L008_R1_001.fastq.gz")\n\nrule all:\n    input:\n        expand("umi_labeled_fastq/{sample}.umi-extract.fq.gz", sample=SAMPLES)\nrule umi_tools_extract:\n    input:\n        "data/{sample}_L008_R1_001.fastq.gz"\n    output:\n        "umi_labeled_fastq/{sample}.umi-extract.fq.gz"\n    shell:\n        "umi_tools extract --extract-method=regex --bc-pattern=\xe2\x80\x9d(?P<umi_1>.{6})(?P<discard_1>.{4}).*\xe2\x80\x9d -I {input} -S {output}"\n
Run Code Online (Sandbox Code Playgroud)\n\n

这是我收到的输出:

\n\n
Job counts:\n    count   jobs\n    1   all\n    6   umi_tools_extract\n    7\n\n[Thu May 16 16:55:05 2019]\nrule umi_tools_extract:\n    input: data/YL5_S221_L008_R1_001.fastq.gz\n    output: umi_labeled_fastq/YL5_S221.umi-extract.fq.gz\n    jobid: 3\n    wildcards: sample=YL5_S221\n\nRuleException in line 9 of /home/ryan/lexogen/test2.snakefile:\nIndexError: list index out of range\n
Run Code Online (Sandbox Code Playgroud)\n\n

如果我从正则表达式模式中删除这部分,那么我不会收到错误:

\n\n

--bc-pattern=\xe2\x80\x9d(?P<umi_1>.{6})(?P<discard_1>.{4}).*\xe2\x80\x9d

\n\n

然后我就没有错误了。我该如何解决这个问题?

\n

python snakemake

6
推荐指数
1
解决办法
1710
查看次数

标签 统计

python ×1

snakemake ×1