snakemake を使用して RNA-seq パイプラインから DAG またはルールグラフを構築しようとすると、graphviz からエラー メッセージが表示されます。'エラー: : 'ファイル' 付近の 1 行目に構文エラーがあります。
このエラーは、目に見える構文エラーがない 2 つの印刷コマンドをコメントアウトすることで修正できます。Notepad ++でスクリプトをUTF-8からAsciiに変換しようとしました。Graphviz は、パイプライン スクリプト内に他の印刷ステートメントがあるため、これら 2 つの特定の印刷ステートメントに問題があるようです。エラーは簡単に修正できますが、同僚が手間をかけずに出版物用にこれらの図を作成できるようになり、印刷ステートメントがワークフローで何が起こっているかを知らせてくれることを望んでいるため、依然として面倒です. 私のパイプラインは、snakefile と複数のルール ファイル、および構成ファイルで構成されています。問題のある行が Snakefile でコメント化されている場合、graphviz はルール スクリプトの別の行で問題を起こします。
#######Snakefile
!/usr/bin/env Python
import os
import glob
import re
from os.path import join
import argparse
from collections import defaultdict
import fastq2json
from itertools import chain, combinations
import shutil
from shutil import copyfile
#Testing for sequence file extension
directory = "."
MainDir = os.path.abspath(directory) + "/"
## build the dictionary with full path for each for sequence files
fastq=glob.glob(MainDir+'*/*'+'R[12]'+'**fastq.gz')
if len(fastq) > 0 :
print('Sequence file extensions have fastq')
os.system('scripts/Move.sh')
fastq2json.fastq_json(MainDir)
else :
print('File extensions are good')
######Rule File
if not config["GroupdFile"]:
os.system('Rscript scripts/Table.R')
print('No GroupdFile provided')
snakemake --forceall --rulegraph | dot -Tpdf > dag.pdf は、snakemake ワークフローを示す pdf 出力になるはずですが、2 行がコメント化されていない場合、Error: : syntax error in line 1 near が発生します。