Змеиный код неверный синтаксис - PullRequest
1 голос
/ 07 ноября 2019

Я схожу с ума от змеиного мейкера. Я перепробовал все типы способов, используя конфигурационный файл и т. Д., Но ничего не работает, и я не могу точно понять, как построчно обнаруживать проверку ошибок.

HISAT2_INDEX_PREFIX = "/media/jim/Elements/Happy/index/genome_chromosomes"

SAMPLES, *_=glob_wildcards('/media/jim/Elements/Happy/test/tissue/trimmed/{sample}_1.fastq.gz')

rule all:
    input: expand("{sample}.bam", sample=SAMPLES)

rule hisat2:
    input:
        hisat2_index=expand(f"{HISAT2_INDEX_PREFIX}.{{ix}}.ht2l", ix=range(1, 8)),
        fastq1="/media/jim/Elements/Happy/test/tissue/trimmed/{sample}_1.fastq.gz",
        fastq2="/media/jim/Elements/Happy/test/tissue/trimmed/{sample}_2.fastq.gz"
    output:
        bam = "{sample}.bam",
        txt = "{sample}.txt",
    log: "/snakemake_log.txt"
    threads: 8
    shell:
        "hisat2 -p {threads} -x {HISAT2_INDEX_PREFIX}"
        " -1 {input.fastq1} -2 {input.fastq2}  --summary-file {output.txt} |"
        "samtools sort -@ {threads} -o {output.bam}"

Теперь получаю ошибку:

SyntaxError in line 11 of /media/jim/Elements/Happy/test/Snakefile:
invalid syntax

Ошибка может быть какой-то мелочью, но я не могу понять, какая ...... Проблема в том, что у меня много тканей, поэтому мне нужно заставить работать хотя бы этот простой пример ...

1 Ответ

1 голос
/ 07 ноября 2019

Пара вещей ...

  • log: "/snakemake_log.txt" должны содержать те же символы подстановки, что и другие директивы. Например, log: "/{sample}.snakemake_log.txt" в противном случае snakemake не знает, куда писать примеры журналов, специфичных для примера

  • Я думаю, что форматирование строки с f"..." было введено в Python 3.6. Может быть, у вас есть питон <3,6? </p>

...