安裝snakemake的方法有多種,snakemake官方推薦的是conda,安裝方法如下:
conda install -c bioconda snakemake
雖然snakemake廣泛的應用於生物信息方面的流程編寫,但是snakemake的應用並不局限於編寫生物信息學的流程,這裏以壹個簡單的合並文件的例子開始介紹snakemake的簡單使用。
在上面的Snakefile腳本中, rule 、 input 、 output 、 shell 、 expand 均為snakemake中的關鍵字或者命令。同時Snakefile中的每壹個 rule 其實都可以看作是壹個簡單的shell腳本,通過Snakefile將多個 rule 組織在壹起並按照我們定義的順序來執行。另外,在 output 中的結果文件可以是未存在目錄中的文件,這時會自動創建不存在的目錄。
rule 是Snakefile中最主要的部分。如上面的例子所說,每壹個rule定義了壹系列pipe中的壹步,每壹個rule都可以當作壹個shell腳本來處理,壹般主要包括 input 、 output 、 shell 3個部分。同時還有許多上面沒有列出來的用法:
每計算壹次數據都要重寫壹次Snakefile有時可能會顯得有些繁瑣,我們可以將那些改動寫入配置文件,使用相同流程計算時,將輸入文件的文件名寫入配置文件然後通過Snakefile讀入即可。
配置文件有兩種書寫格式——json和 yaml 。在Snakefile中讀入配置文件使用如下方式:
在shell命令中直接調用config文件中的內容的話,不需要引號,如 config[a] 而不是 config["a"] 。
集群計算配置
壹般講所有的參數配置寫入Snakefile後直接在Snakefile所在路徑執行 snakemake 命令即可開始執行流程任務。壹些常用的參數:
參考: snakemake官方文檔