Snakemake ist ein Workflow-Management-System, welches auf Python aufbaut und vor allem in der Bioinformatik eingesetzt wird.
Es funktioniert nach folgenden Prinzipien: Jeder Schritt im Ablauf ist eine rule (Regel). Die Eingaben, Ausgaben und die Kommandozeilenbefehle für jeden Schritt sind in einem sogenannten Snakefile beschrieben. Jede Regel verfügt über eine Anzahl Parameter, die in einer yaml-Datei beschrieben sind. Jede Regel erzeugt einen Output, der wiederum den Input für andere Regeln darstellen kann.
Ein simples Beispiel für ein Snakemake-Programm ist:
rule data_cleanup: input: "data/data.txt" output: "result/cleaned_data.txt" script: "scripts/data_cleanup.py"
Anstelle eines Skriptes kann auch ein Kommandozeilenbefehl angegeben werden: # Diese Regel filtert text.txt derart, dass Zeilen # mit dem Wort "Wikipedia" beibehalten werden
rule wikipedia: input: "data/text.txt" output: "result/wikipedia.txt" shell: "cat {input} | grep "Wikipedia" > {output}"
Literatur
Einzelnachweise
Kategorie:Python (Programmiersprache)