snakemake - Snakemake 无效语法
问题描述
我对蛇精越来越疯狂了。我尝试了所有类型的方法,使用配置文件等,但没有任何效果,我无法准确理解如何逐行检测错误检查。
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
错误可能是一些小东西,但我不明白是哪个......问题是我有很多组织,所以我必须至少做这个简单的例子......
解决方案
有几件事...
log: "/snakemake_log.txt"
应该包含与其他指令相同的通配符。例如log: "/{sample}.snakemake_log.txt"
,否则snakemake 不知道在哪里编写示例特定日志我认为
f"..."
在 python 3.6 中已经引入了字符串格式化。也许你有 python < 3.6?
推荐阅读
- amazon-web-services - 在 AWS 上出现错误“必须指定至少一个'memory'或'memoryReservation'”
- python - Post 方法没有更新数据库 Django
- ios - UICollectionViewDragDelegate 不工作
- c# - 将数字转换为其他类型的数字并在信息丢失时出现错误
- flutter - 容器中的颤振盒装饰
- python-3.x - 如何将 x.numpy() 的形状转换为矩阵 (n,m)
- html - Angular 10:如何创建动态组件/html?
- php - Symfony 5 - 多重保护认证 - 主页认证用户
- google-cloud-platform - 在 Google API 控制台中更改项目名称而不使用 CLI 工具
- mysql - MySQL - 选择排名前 5 名