2023-GATK4-Best Practices|| Getting started with GATK4(一)

老規矩,先奉上學習資料鏈接:

GATK正確的發音為:"Gee-ay-tee-kay" (/d?i?e??ti?ke?/),而不是:"Gat-kay" (/ɡ?t?ke?/) ,代表:Genome Analysis Toolkit中的粗體字母縮寫。

它是一個命令行工具集合,用于分析高通量測序數據,主要用于識別變異。這些工具可以單獨使用,也可以連接在一起形成完整的工作流。我們提供端到端的工作流,稱為GATK最佳實踐,為特定的用例量身定制。

從4.0版本開始,GATK包含Picard工具包,因此所有Picard工具都可以從GATK本身中獲得。他們的文檔可以在本網站的工具索引部分找到。

本次內容有:

  1. Preview the pipelines
  2. Quick start for the impatient
  3. Requirements
  4. Get GATK
  5. Install it
  6. Test that it works
  7. Run GATK and Picard commands
  8. Learn the Best Practices
  9. Run pipelines
  10. Get help
  11. Subscribe to forum notifications

1. Preview the pipelines

如果沒有服務器可以練習,官網提到他們有一個云平臺:cloud platform Terra,使用教程見:GATK on the Cloud with Terra

2. Quick start for the impatient

3. Requirements

需要unix操作系統,Java1.8,還有部分額外的R和Python依賴。相關依賴見:https://gatk.broadinstitute.org/hc/en-us/articles/360035889531

強烈建議使用Docker容器系統,所有已發布的GATK4版本都可以在Dockerhub中找到預先打包的容器映像:https://hub.docker.com/r/broadinstitute/gatk/

如果你不能使用Docker,請使用我們提供的Conda環境來管理依賴關系,如github存儲庫README中所述:https://github.com/broadinstitute/gatk/blob/master/README.md

需要Python 2.6或更高版本來運行gatk包裝器腳本。

如果遇到Java版本要求方面的困難,請參閱本文以獲得幫助:https://gatk.broadinstitute.org/hc/en-us/articles/360035532332

4. Get GATK

GATK包下載:https://github.com/broadinstitute/gatk/releases 或者Docker鏡像:https://hub.docker.com/r/broadinstitute/gatk/。

下面的說明假設您已將GATK包下載到本地機器,并計劃直接運行它。

下載后,會在結果目錄中發現四個文件:

wget https://github.com/broadinstitute/gatk/releases/download/4.4.0.0/gatk-4.4.0.0.zip

unzip gatk-4.4.0.0.zip

gatk
gatk-package-[version]-local.jar
gatk-package-[version]-spark.jar
README.md

為什么有兩個jar?顧名思義,gatk-package-[version]- Spark .jar是用于在Spark集群上運行Spark工具的jar,而gatk-package-[version]-local.jar是用于其他一切(包括“本地”運行Spark工具,即在常規服務器或集群上)的jar。

那么,這是否意味著您每次都必須指定要運行哪個程序?不!看到里面的gatk文件了嗎?這是您調用的可執行包裝器腳本,它將根據命令行的其余部分為您選擇合適的jar。

5. Install it

傳統意義上不需要安裝,因為預編譯的jar文件應該可以在任何滿足上面列出的要求的POSIX平臺上工作。您只需要打開下載的包,并將包含jar文件和啟動腳本的文件夾放在硬盤驅動器(或服務器文件系統)上一個方便的目錄中。

在bash中,典型的語法是export PATH="/ PATH /to/gatk-package/:$PATH",其中/ PATH /to/gatk-package/是gatk可執行文件所在位置的路徑。請注意,jar必須保持在與gatk相同的目錄中才能工作。確保在你的路徑中包含最后的/。

還可以在.bash_profile文件中創建可執行文件的別名,這樣只需輸入gatk就會運行文件路徑:alias gatk='/path/to/gatk-package/gatk'。

這里我一般會選擇用絕對路徑調用它!

6. Test that it works

./gatk --help

可以成功調用出幫助文檔:

image-20231108133928616.png

7. Run GATK and Picard commands

工具索引部分列出了可用的工具,并詳細描述了可用的選項:https://gatk.broadinstitute.org/hc/en-us/categories/360002369672。調用任何GATK或Picard工具的基本語法如下:

gatk [--java-options "jvm args like -Xmx4G go here"] ToolName [GATK args go here]

可以在這里找到有關GATK命令行語法的更多信息:https://gatk.broadinstitute.org/hc/en-us/articles/360035531892

例如,一個簡單的GATK命令是這樣的:

gatk --java-options "-Xmx8G" HaplotypeCaller -R reference.fasta -I input.bam -O output.vcf

Picard工具的語法

當在GATK中使用時,所有Picard工具都使用與GATK相同的語法。相對于“Picard”風格語法的轉換非常簡單;例如,I=input. bam,你現在做-I input.bam。例如,一個簡單的Picard命令是這樣的:

gatk ValidateSamFile  -I input.bam -MODE SUMMARY

8. Learn the Best Practices

GATK最佳實踐是端到端的工作流程:https://gatk.broadinstitute.org/hc/en-us/sections/360007226651,旨在為在高通量測序(HTS)數據中執行變體發現分析提供逐步建議。我們有幾個這樣的工作流是根據項目目標(根據感興趣的變量類型)和實驗設計(根據排序方法類型)量身定制的。雖然它們最初是為人類基因組研究設計的,但GATK最佳實踐可以用于分析各種非人類生物體,包括非二倍體。

最佳實踐的文檔包括對所涉及過程的高級描述,解釋更深入細節的各種文檔,以及根據約束和用例可以做出的調整,這些建議的一組實際管道實現,以及可能是最重要的研討會材料,包括幻燈片、視頻和指導您完成每個步驟的教程。

9. Run pipelines

我們提供了GATK最佳實踐工作流的腳本實現以及一些額外的輔助/輔助腳本,以便每個人都能更容易地運行這些有時相當復雜的工作流。

這些工作流是用WDL編寫的,旨在在任何支持WDL執行的平臺上運行。選項列在用戶指南的流水線部分:https://gatk.broadinstitute.org/hc/en-us/articles/360035889771。我們的首選是 Cromwell 執行引擎,與GATK一樣,它也是由Broad的數據科學平臺(DSP)開發的,并且可以作為服務在我們的云平臺Terra(以前稱為FireCloud)上使用。

如果您選擇通過Terra運行GATK工作流,則實際上不需要執行上述任何操作,因為所有內容都已經以隨時可運行的形式預加載(軟件、腳本,甚至一些示例數據)。在這一點上,這是運行工作流最簡單的方法,就像我們在自己的工作中所做的那樣。如上所述,我們已經在一個名為Terra的云平臺上的預配置工作區中設置了所有的最佳實踐管道,因此您可以嘗試它們,而無需進行任何設置。您可以將結果與其他管道進行比較,也可以上傳您自己的數據(私下和安全地)來測試我們的管道在這些管道上的表現。

這瘋狂的推薦他們的云平臺Terra,后面去看看要不要收費?。。?/p>

10. Get Help

我們通過非?;钴S的社區論壇(https://gatk.broadinstitute.org/hc/en-us/community/topics)提供所有支持。您可以根據以下指導原則提出問題并報告可能遇到的任何問題:

在尋求幫助之前

在論壇上發表文章前,請做以下工作:

1.使用每個頁面右上角的搜索框,它將搜索所有內容,包括用戶指南和論壇。

2.如果有些東西不工作:

  • 對所有輸入文件運行驗證檢查,以確保它們的格式正確
  • 請參閱用戶指南中的“故障排除GATK4問題”部分:https://gatk.broadinstitute.org/hc/en-us/sections/360007226791,該部分涵蓋了非錯誤的常見問題
  • 在論壇中搜索以前的報告,例如使用錯誤消息
  • 請再次嘗試您正在使用的任何工具的最新版本

尋求幫助時

當詢問一個問題時,請包括以下內容:

  • 所有版本信息(GATK版本,Java,如果可能的話,您的操作系統)。
  • 不要只是告訴我們你在遵循最佳實踐——準確地描述你在做什么。
  • 包括相關細節,例如平臺,DNA或rna測序,WES(+捕獲試劑盒)或WGS(無PCR或PCR+),配對或單端,讀取長度,預期平均覆蓋范圍,體細胞數據等。
  • 對于工具錯誤,包括您運行的完整命令和堆棧跟蹤(_i.e.)。如果有的話,那就是終端輸出中那一長堆難以讀懂的軟件官樣文章。
  • 對于格式問題,包括對bam運行ValidateSamFile或對vcf運行validatvariants的結果。
  • 對于奇怪/意外的結果,包括一個說明性的例子,例如附上IGV截圖,并詳細解釋為什么你認為結果是奇怪的-特別是如果你正在處理非人類數據。我們可能沒有意識到你的不是常用物種。

我們通常會在一到兩個工作日內回復您,但請注意,更復雜的問題(或不明確的報告)可能需要更長的時間來解決。另外,一年中有些時候我們特別忙,我們可能會比平時花更長的時間來回答你的問題。

我們可能會要求您提交一份正式的bug報告,其中包括向我們發送一些測試數據,我們可以使用這些數據自己重現問題。這通常是調試所需要的。請放心,我們將所有傳輸給我們的數據視為私人和機密。在某些情況下,我們可能會請求您的許可,在我們的測試框架中包含您的測試用例的片段,這是公開訪問的。在這種情況下,您有責任與數據的所有者核實您是否被授權允許我們公開該數據。

請注意,本文檔指南中的信息是針對最終用戶的。對于開發人員來說,源代碼和相關資源可以在GitHub上獲得。

11. Subscribe to forum notifications

考慮訂閱論壇通知和公告,這樣當我們回答你的問題時,你就會收到一封電子郵件,當我們在博客上發布新內容時,這是了解新功能和機會的最佳方式。有關說明,請參閱此鏈接:https://gatk.broadinstitute.org/hc/en-us/articles/360035889511

這份教程寫的真棒??!當然指的原文~

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容